我们使用他们的SMTP服务器构建了一个我们部署在客户端服务器上的ASP.NET应用程序。
我正在尝试让Elmah使用ErrorEmailModule
发送错误电子邮件。这使用了web.config中配置的SMTP设置,但以某种方式发送电子邮件不起作用(没有发送任何内容)。
SMTP设置配置如下:
<system.net>
<mailSettings>
<smtp from="support@xxxxxx.nl">
<network host="xxxxxxx.management.local" port="25" enableSsl="true" defaultCredentials="true"/>
</smtp>
</mailSettings>
</system.net>
要测试这是否是Elmah或配置的问题我创建了一个使用相同设置的小测试应用程序并尝试发送电子邮件:
string from = "support@xxxxxxxx.nl";
string to = ConfigurationManager.AppSettings["ErrorReportingEmail"];
var message = new MailMessage(from, to, "Test", "Test");
var smtpClient = new SmtpClient();
smtpClient.Send(message);
这也不起作用。 SmtpClient不会抛出错误,它就像发送电子邮件一样,但我没有收到任何内容。
然后我尝试使用2种不同的电子邮件测试工具发送电子邮件,称为MailTester和MultiMail,我输入了相同的SMTP设置,他们可以发送电子邮件。
所以我的问题是:为什么我可以从这些邮件测试程序应用程序发送电子邮件,而不是从我的ASP.NET应用程序发送电子邮件?
答案 0 :(得分:0)
尝试此设置deliveryMethod = network。
<system.net>
<mailSettings>
<smtp from="support@xxxxxx.nl" deliveryMethod="Network">
<network host="xxxxxxx.management.local" port="25" enableSsl="true" defaultCredentials="true"/>
</smtp>
</mailSettings>
</system.net>