我正在尝试使用System.Net.Mail.MailMessage类从我的C#应用程序发送电子邮件。对于电子邮件的正文,我想要包含换行符以创建单独的文本块。当显示电子邮件向用户显示HTML时,如何让Outlook等电子邮件客户端尊重换行符?我在电子邮件文本正文中插入了哪些字符,以便将换行符视为换行符?
注意:我的电子邮件正文是纯文本,而不是HTML。
答案 0 :(得分:13)
换行符是空格字符,所有空格字符都被解释为HTML中的空格。
您可以使用中断标记(<br/>
)在HTML代码中添加换行符,并且可以在段落周围使用段落标记(<p>...</p>
)来获取它们之间的距离。
答案 1 :(得分:8)
您可以使用Environment.NewLine属性。这将插入为当前环境定义的换行字符串。
答案 2 :(得分:6)
您需要插入HTML换行符,即<br/>
答案 3 :(得分:3)
如果您要将电子邮件作为HTML发送,请使用其他人描述的中断标记。如果您希望换行符有效,则需要将该消息作为纯文本发送,可以通过设置IsBodyHtml = false来指定。
如果未使用现有的换行符,请尝试使用“\ n”强制转换,这是新行的转义序列。
答案 4 :(得分:3)
在我看来,使用parograph标签是最好的方法,因为它可以保持格式清晰,易于维护。
我希望这会有所帮助。
<p>Dear Mike</p>
<p>This is a sample message</p>
<p><b>Thank You,</b></p>
答案 5 :(得分:1)
email.Body = new MessageBody(BodyType.Text, stringThatCointainsMessage);
至少使用Microsoft.Exchange.WebServices.Data
这将解决问题
您需要使用重载方法和枚举BodyType.Text