邮件(从asp.net System.Net.Mail)截断Outlook,但不Gmail
本文关键字:截断 Outlook Gmail 但不 Mail Net asp net System 邮件 | 更新日期: 2023-09-27 18:19:22
我们运行的是较旧的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);
问题可能与文本中的某些"特殊代码"字符有关,导致Outlook理解EOF或类似的东西。
尝试将BODYFORMAT指定为明文。
msg.bodyformat = Microsoft.Office.Interop.Outlook.OlBodyFormat.olFormatPlain