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

ボディービルダーに身体を埋め込もうとしましたが、メールを受け取ったときに空のボディーが返されました。私はボディが空の場合に議論を投げる例外があります。Mimekit/MailkitでHTMLメッセージを送信する方法

答えて

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」のみを含めると、その両方を含むのではなく1つだけを含む迷惑メールとして識別される可能性がありますか? – NoReceipt4Panda

+0

それはおそらく受信者のメールソフトに依存します – jstedfast

+0

もっと現実のサンプルですか? – Kiquenet

7

MimeKit Documentation - Creating Messages

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

「A TextPartはTextPartコンストラクタの最初の引数は、メディアサブタイプを指定するテキストメディアタイプとリーフノードのMIME部分である:。無地html,富裕化,rtfおよびxml

0

厳密にしたい場合は、他のオプションを1つ選択します。

msg.Body = new TextPart(MimeKit.Text.TextFormat.Html) { Text = "<b>html content</b>" }; 
関連する問題