我使用SendGrid Web在带有C#的ASP.NET MVC网站上发送带有PDF附件的电子邮件。网站作为Azure网站托管在Windows Azure中。
在我的本地开发机器和也在Azure中托管的测试站点中,一切都运行良好。
然而,我发现它非常烦人,因为相同的设置在生产站点中不起作用。它使用与SendGrid相同的用户名和密码,但它不起作用。
我的代码类似于以下内容:
public static void SendEmail(string toEmail, string messageHtml)
{
var message = new SendGridMessage();
message.From = new MailAddress("me@mydomain.com", "Test Email");
message.AddTo(toEmail);
message.Subject = subject;
message.Html = messageHtml;
var credentials = new NetworkCredential("mysendgriduser", "mysendgridpassword");
var transportweb = new SendGrid.Web(credentials);
try
{
transportweb.DeliverAsync(message).Wait();
}
catch (Exception e)
{
throw e;
}
}
答案 0 :(得分:0)
Azure可能会停止特定端口上的出站流量以防止垃圾邮件。 SendGrid建议使用端口587。