2016-12-15 6 views
8
BodyBuilder bodyBuilder = new BodyBuilder(); 
messageContent.Body = "<b>This is a test mail</b>"; 
bodyBuilder.HtmlBody = messageContent.Body; 

Я попытался встроить свое тело в культуриста, но когда я получил электронное письмо, он вернул пустое тело. У меня есть исключение, которое вызовет аргумент, если тело пуст.Как отправить HTML-сообщение через Mimekit/Mailkit

ответ

26

Использование 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); 
+0

Если вы включаете только 'HtmlBody', а не' TextBody', существует ли риск, что он может быть идентифицирован как спам только для одного, а не для обоих? – NoReceipt4Panda

+0

Это, вероятно, зависит от почтового программного обеспечения получателей – jstedfast

+0

Больше реальных образцов мира? – Kiquenet

7

MimeKit Documentation - Creating Messages

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

«А TextPart представляет собой лист-узел MIME часть с текстовым медиа-типа Первый аргумент конструктора TextPart определяет медиа-подтип:. простой, html, обогащенный, rtf и xml. "

0

Еще один вариант здесь, если вы хотите быть строгим;

msg.Body = new TextPart(MimeKit.Text.TextFormat.Html) { Text = "<b>html content</b>" }; 
Смежные вопросы