尝试通过SmtpClient配置邮件时遇到问题。
我通过web.config文件配置它,代码如下:
<configuration>
<system.net>
<mailSettings>
<smtp from="mail@gmail.com" deliveryMethod="Network">
<network enableSsl="true" host="smtp.gmail.com" port="587" userName="mail@gmail.com" password="pass" />
</smtp>
</mailSettings>
</system.net>
</configuration>
然后发送消息:
mailMessage = new MailMessage("mail@gmail.com", "mail@gmail.com", Subj, message.ToString());
using (var smtpClient = new SmtpClient()) {
smtpClient.Send(mailMessage);
}
但是此时我收到一个异常,说明没有指定SMTP主机。 我尝试用这种方式初始化它:新的SmtpClient(“smtp.gmail.com”),然后我收到了另一个关于SSL但是没有配置的例外。
因此,显然,web.config内容被忽略了。如何指定实际存在所有必要设置?
答案 0 :(得分:2)
您的web.config内容看起来不像应用程序根web.config,但是存储在子目录中的内容(例如mywebsite.com/foo/web.config
而不是mywebsite.com/web.config
)
将<system.net><mailSettings>
配置元素移动到应用程序根目录中的web.config文件,然后它就可以运行。