有关邮件内容的问题

时间:2009-09-17 19:55:42

标签: c# asp.net

我正在向客户发送邮件。格式如下:

  

姓名:abc。公司:CCC。地址:sde。

所以邮件以连续格式出现,我不想要。

我想要这种格式:

  

姓名:abc。

     

公司:CCC

     

地址:sde。

我目前正在使用string.format填充每个值,稍后将“.”替换为“\n”。 但是,它看起来不起作用。 关于如何使它看起来像这样的任何建议?

6 个答案:

答案 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查看消息,请尝试以下两种方法之一:

  1. 使用\ n \ n
  2. 保持您的句号,以便该行以。\ n
  3. 结尾

    我知道这看起来很奇怪,但这可能会让前景变​​得愉快。