我们正在运行较旧的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);
答案 0 :(得分:0)
问题可能与文本中的某些“特殊代码”字符有关,导致Outlook理解EOF或类似的东西。
尝试将BODYFORMAT指定为PLAINTEXT。
msg.bodyformat = Microsoft.Office.Interop.Outlook.OlBodyFormat.olFormatPlain