次のように text/html コンテンツ タイプ文字列を割り当てることにより、HTML 形式で電子メールを (Outlook に) 送信するとうまく機能します。
using (MailMessage message = new MailMessage())
{
message.From = new MailAddress("--@---.com");
message.ReplyTo = new MailAddress("--@---.com");
message.To.Add(new MailAddress("---@---.com"));
message.Subject = "This subject";
message.Body = "This content is in plain text";
message.IsBodyHtml = false;
string bodyHtml = "<p>This is the HTML <strong>content</strong>.</p>";
using (AlternateView altView = AlternateView.CreateAlternateViewFromString(bodyHtml,
new ContentType(MediaTypeNames.Text.Html)))
{
message.AlternateViews.Add(altView);
SmtpClient smtp = new SmtpClient(smtpAddress);
smtp.Send(message);
}
}
メールは Outlook (2003) で正しく HTML として認識されます。
しかし、リッチテキストを試してみると:
MediaTypeNames.RichText;
Outlook はこれを検出せず、プレーン テキストにフォールバックします。
電子メールをリッチ テキスト形式で送信するにはどうすればよいですか?