2013-08-18 4 views
1

У меня возникли проблемы с настройкой отправки почты через SmtpClient.Содержимое web.config не влияет на конфигурацию SmtpClient()

настроить его корыто файл web.config с кодом, как:

<configuration> 
    <system.net> 
    <mailSettings> 
     <smtp from="[email protected]" deliveryMethod="Network"> 
     <network enableSsl="true" host="smtp.gmail.com" port="587" userName="[email protected]" password="pass" /> 
     </smtp> 
    </mailSettings> 
    </system.net> 
</configuration> 

Тогда отправив сообщение:

mailMessage = new MailMessage("[email protected]", "[email protected]", Subj, message.ToString()); 
using (var smtpClient = new SmtpClient()) { 
    smtpClient.Send(mailMessage); 
} 

Но в этот момент я получаю исключение о том, что SMTP-хост не указывается. Я попытался инициализировать его следующим образом: новый SmtpClient («smtp.gmail.com»), затем я получил другое исключение из SSL, но не настроено.

Так что, очевидно, содержимое web.config просто игнорируется. Как указать, что на самом деле все необходимые настройки?

+0

Связанный вопрос: http://stackoverflow.com/questions/329411/smtpclient-class-not-picking-up-default-parameters-from-web-config-file –

+0

О, мой, даже не заметил, что есть два web.configs ... – yaapelsinko

ответ

2

содержание вашего Web.config в не похоже на применение корень web.config, но что-то хранится в подкаталоге (например, mywebsite.com/foo/web.config вместо mywebsite.com/web.config)

переместить <system.net><mailSettings> элементов конфигурации в файл web.config в корне вашего приложения, а затем он должен работать.