我正在向客户发送邮件。格式如下:
姓名:abc。公司:CCC。地址:sde。
所以邮件以连续格式出现,我不想要。
我想要这种格式:
姓名:abc。
公司:CCC
地址:sde。
我目前正在使用string.format
填充每个值,稍后将“.
”替换为“\n
”。
但是,它看起来不起作用。
关于如何使它看起来像这样的任何建议?
答案 0 :(得分:4)
使用BodyFormat属性将邮件格式化为HTML格式,然后使用< br />换行。
MailMessage myMail = new MailMessage();
myMail.BodyFormat = MailFormat.Html;
myMail.Body = "Name: abc.<br />";
myMail.Body += "Company:ccc.<br />";
myMail.Body += "Address: sde.<br />";
答案 1 :(得分:3)
尝试使用Environment.NewLine
答案 2 :(得分:0)
你试过“\ n \ r”吗?
是否将正文设置为纯文本或html?
答案 3 :(得分:0)
如果要构建一个长字符串,我建议您使用StringBuilder。
StringBuilder sb = new StringBuilder();
sb.AppendLine(string1);
sb.AppendLine(string2):
sb.AppendLine(""); //empty line
mailMessage.Body = sb.ToString();
编辑:我使用它来发送仅限文本的电子邮件,它适用于非HTML电子邮件。
答案 4 :(得分:0)
@ Canavar的答案很好,但并非所有邮件客户端都支持html,甚至那些可能会出于安全目的关闭它的人。
作为替代方案,我会说使用MailFormat.Text并使用System.Environment.NewLine
答案 5 :(得分:0)
如果HTML格式正常,您只需插入
<br>
即可
如果没有,并且您正在使用outlook查看消息,请尝试以下两种方法之一:
我知道这看起来很奇怪,但这可能会让前景变得愉快。