【发布时间】:2016-01-25 21:49:33
【问题描述】:
我们正在运行一个较旧的 ASP.NET 2.5 应用程序,并且我们使用 System.Net.Mail 命名空间向客户发送纯文本电子邮件。有些有点长,因为我们会将正在更改的产品列表发送给我们的客户。
我们收到来自用户的报告,称他们的电子邮件被切断了。经过一番调查,我们意识到它们只是在 Outlook 中被切断了。在 Gmail 中,它们很好。知道这可能是什么吗?
这是生成我们电子邮件的代码的精简示例...
MailMessage msg = new MailMessage();
SmtpClient client = new SmtpClient(ConfigurationManager.AppSettings["smtpHost"], Convert.ToInt16(ConfigurationManager.AppSettings["smtpPort"]));
client.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["smtpCredentialUser"], ConfigurationManager.AppSettings["smtpCredentialPassword"]);
msg.From = new MailAddress("xxx@xxxx.xxx", "Product Alert");
string Message_Subject = "Product Alerts";
string body = "\nThe following Products have been updated" + "\r\n\r\n";
foreach (ProductItem pi in prods.updatedItems)
{
body += "Product Name: " + pi.Name.ToString() + "\n";
body += "New Price : " + pi.Price.ToString() + "\n";
}
msg.Body = body;
msg.To.Add(new MailAddress("xxx@xxx.xxx","Mr. Test");
client.Send(msg);
【问题讨论】:
-
这可能 100% 不相关,但我会尝试的第一件事是将您的消息编码更改为 UTF8,see this answer 了解如何