【发布时间】:2013-05-02 09:11:04
【问题描述】:
发生错误时,我正在生成一封电子邮件。我正在使用StringBuilder.AppendLine() 和StringBuilder.AppendLine(String) 构建电子邮件正文,但是我的电子邮件正文显示为很长的一行,没有换行符。
例如:
Dim ErrorsStringBuilder As New StringBuilder
ErrorsStringBuilder.AppendLine(String.Format("Status : {0} Message : {1}", Results.Status, Results.ErrorMessage))
ErrorsStringBuilder.AppendLine(String.Format("Failed : {0} Total : {1}", Results.FailedCount, Results.TotalCount))
ErrorsStringBuilder.AppendLine("Batch #: " & Results.BatchNumber)
ErrorsStringBuilder.AppendLine()
ErrorsStringBuilder.AppendLine("Individual Errors:")
ErrorsStringBuilder.AppendLine()
For Each FailedRecord .......
ErrorsStringBuilder.AppendLine(String.Format("Failed Record ID : {0} Message : {1}", FailedRecord.ID, FailedRecord.ErrorText))
Next
这是来自 MSDN 的对 .AppendLine() 和 .AppendLine(String) 的描述。
将默认行终止符附加到当前行的末尾 StringBuilder 对象。
附加指定字符串的副本,后跟默认行 终止符到当前 StringBuilder 对象的末尾。
我的问题是:为什么没有换行符? 为什么没有应用默认的行终止符?我误解了描述吗?
ps。我确实看过this question,但没有解释为什么。
我知道我可以使用System.Environment.NewLine 或"\n" 来获得换行符。
【问题讨论】:
-
在您的 vb.net 代码中设置
mail.IsBodyHtml = false; -
它对你有用吗?
标签: .net vb.net string email stringbuilder