如何通过Mimekit / Mailkit发送HTML消息

时间:2016-12-15 09:24:09

标签: c# mailkit mimekit

BodyBuilder bodyBuilder = new BodyBuilder();
messageContent.Body = "<b>This is a test mail</b>";
bodyBuilder.HtmlBody = messageContent.Body;

我试图将我的身体嵌入健美运动员但是当我收到电子邮件时,它返回了一个空体。我有一个例外,如果正文是空的话会抛出一个参数。

4 个答案:

答案 0 :(得分:41)

像你一样使用BodyBuilder可能是最简单的方法。

var bodyBuilder = new BodyBuilder ();
bodyBuilder.HtmlBody = "<b>This is some html text</b>";
bodyBuilder.TextBody = "This is some plain text";

message.Body = bodyBuilder.ToMessageBody ();

client.Send (message);

答案 1 :(得分:15)

MimeKit Documentation - Creating Messages

var message = new MimeMessage();    
message.Body = new TextPart ("html") { Text = "<b>Test Message</b>" };

“TextPart是具有文本媒体类型的叶节点MIME部分.TextPart构造函数的第一个参数指定媒体子类型: plain html 丰富 rtf xml 。“

答案 2 :(得分:6)

如果你想严格要求,另外还有一个选择;

msg.Body = new TextPart(MimeKit.Text.TextFormat.Html) { Text = "<b>html content</b>" };

答案 3 :(得分:0)

var bodyBuilder = new BodyBuilder();
bodyBuilder.HtmlBody = body;
bodyBuilder.TextBody = "-";

message.Body = bodyBuilder.ToMessageBody();

在某些邮件ISP中,应始终按值设置bodyBuilder.TextBody。