Почему мой SMTP-сервер не отправляет мою почту ASP.NET? - PullRequest
0 голосов
/ 19 марта 2009

У меня есть программа ASP.NET, которая отправляет подтверждение по электронной почте со следующим кодом:

 String msgTxt = "My Message";               
 try
 {
      MailMessage message = new MailMessage();
      message.From  = new MailAddress("info@eatrightamerica.com");
      message.To.Add(new MailAddress(emailParam));
      message.Bcc.Add(new MailAddress("NPClients@eatrightamerica.com"));
      message.Subject   = "Your Nutrition Prescription";
      message.Body  = msgTxt;   

      SmtpClient client = new SmtpClient();
      client.Send(message);
 }
 catch (Exception ex)
 {              
 }

Файл web.config имеет это:

<system.net>  
    <mailSettings>  
       <smtp>  
          <network   
              host="localhost"   
              port="25" />
       </smtp>
    </mailSettings>
</system.net>

И мой IIS настроен на работу через порт 25 (я могу подключиться к telnet и протестировать его, и он прекрасно отправляет telnet).

Может кто-нибудь направить меня куда-нибудь еще, чтобы найти проблему?

Ответы [ 4 ]

1 голос
/ 19 марта 2009

Является ли сервер, на котором выполняется ваш код, настроенным в качестве ретранслятора SMTP в вашей среде электронной почты? Это может быть проблемой в корпоративных / корпоративных настройках в частности.

1 голос
/ 19 марта 2009

Вы пытались настроить SMTP-сервер и порт с помощью альтернативных SmtpClient конструкторов? По крайней мере, это говорит нам, что проблема не в файле конфигурации.

int port = 1234;    
SmtpClient client = new SmtpClient("mail.mydomain.com", port);
client.Send(message);
0 голосов
/ 20 марта 2009

Вы действительно получаете исключение? Если нет, то ваша почта, вероятно, принимается, но просто не отправляется в конечный пункт назначения.

Проверьте каталог mailroot \ badmail. Это может быть там с возможным объяснением проблемы (обычно разрешением DNS).

Вы также можете включить ведение журнала для System.Net.Mail. Вот ссылка, которую я написал с дополнительной информацией: http://www.systemnetmail.com/faq/4.10.aspx

0 голосов
/ 20 марта 2009

Вы пытались указать атрибут deliveryMethod элемента smtp?

<system.net>  
    <mailSettings>  
       <smtp deliveryMethod="network">  
          <network   
              host="localhost"   
              port="25" />
       </smtp>
    </mailSettings>
</system.net>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...