6
Я создаю mailBody черезКак установить кодировку на AlternateView
using (var streamWriter = new StreamWriter(fooFileName, false, Encoding.UTF8))
{
streamWriter.Write(fooMessage);
}
теперь я потребляя этот файл с
var mailMessage = new System.Net.Mail.MailMessage
{
From = fooSender,
To =
{
fooRecipient
},
Subject = fooSubject,
SubjectEncoding = Encoding.UTF8,
BodyEncoding = Encoding.UTF8
};
// fooMediaType can be
// - System.Net.Mime.MediaTypeNames.Text.Html
// - System.Net.Mime.MediaTypeNames.Text.Plain
var alternateView = new System.Net.Mail.AlternateView(fooFileName, fooMediaType);
mailMessage.AlternateViews.Add(alternateView);
Если я использую не-умляуты, все работает отлично, но как только я использую умлауты в моем alternateView
, они сломаются.
Итак, как я могу установить какую-то кодировку на alternateView, чтобы все работало?
Очень полезно! Возможно, лучше использовать 'Encoding.UTF8.HeaderName', потому что параметр charset будет добавлен в заголовок Content-Type. В этом случае 'Encoding.UTF8.WebName' и' Encoding.UTF8.HeaderName' возвращают одно и то же значение 'utf-8', поэтому это не имеет большого значения. –