我们在发送电子邮件时遇到了一个奇怪的问题。新线路似乎并不总是有效。我们的代码是
string mailSubject = "EBN Import Success. Client: " + ClientName.Trim();
StringBuilder mailBody = new StringBuilder("Client Name: " + ClientName.Trim());
mailBody.Append(System.Environment.NewLine + "File Name: " + FileName);
mailBody.Append(System.Environment.NewLine + "FileID: " + FileId);
mailBody.Append(System.Environment.NewLine + "BatchID: " + BatchID);
mailBody.Append(System.Environment.NewLine + System.Environment.NewLine + "Records in File (or staging): " + noOfRecords.ToString());
mailBody.Append(System.Environment.NewLine + "Records imported into BNCStaging: " + noOfRecords.ToString());
mailBody.Append(System.Environment.NewLine + "Records imported into EBNTrackings: " + noOfRecords.ToString());
string mailTo = ConfigurationManager.AppSettings["ErrorEmailTo"].ToString();
string mailFrom = ConfigurationManager.AppSettings["EmailFrom"].ToString();
string mailHost = ConfigurationManager.AppSettings["EmailServer"].ToString();
SmtpClient mailClient = new SmtpClient(mailHost);
mailClient.Send(mailFrom, mailTo, mailSubject, mailBody);
我们得到的输出是
客户端名称:[客户端名称]文件名称:[文件名称]
文件 ID:nnnn
批号:mmmm
文件(或暂存)中的记录:x
导入 BNCStaging 的记录:是
导入 EBNTrackings 的记录:z
客户端名称和文件名在同一行。
我们也尝试过使用 AppendLine() 和 '\n',但没有成功。
任何建议...
顺便说一句,我们使用的是.net 4.0,邮件客户端是outlook
最佳答案
在 Outlook 中,点击Extra line breaks in this message were removed
,然后点击Restore line breaks
。
关于.net - 换行符在电子邮件中不起作用 - .net Windows 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5183786/