У меня есть программа, которая отправляет электронные письма в формате HTML, используя c # и System.Net.Mail.Большинство писем получено правильно, но некоторые получатели сообщают о получении письма, которое выглядит для меня как кодировка.Они сообщают, что электронные письма в формате HTML, отправленные им от наших пользователей через внешний вид, выглядят корректно.
Ниже приведен код, который я использую, я добавил "mm.BodyEncoding = System.Text.Encoding.UTF8;"чтобы попытаться это исправить, я вообще не устанавливал это значение, которое, по-моему, по умолчанию использует кодировку ASCII.Это довольно сложно отладить, так как я не могу воссоздать ошибку.
public List<string> Send()
{
List<string> Errors = new List<string>();
try
{
MailMessage mm = new MailMessage();
if (HTMLBody)
{
mm.IsBodyHtml = true;
mm.BodyEncoding = System.Text.Encoding.UTF8;
}
if (ReplyTo != "")
{
mm.ReplyToList.Add(ReplyTo);
}
mm.Body = this.Body;
mm.Subject = this.Subject;
mm.From = new System.Net.Mail.MailAddress(this.Sender);
foreach (string address in this.Recipients.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries))
{
try
{
mm.To.Add(address);
}
catch (FormatException)
{
Errors.Add("Invalid Email Address Format:" + address);
}
}
foreach (string address in BlindCC.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries))
{
try
{
mm.Bcc.Add(address);
}
catch (FormatException)
{
Errors.Add("Invalid Email Address Format:" + address);
}
}
SmtpClient smtp = new SmtpClient(SMTPServer);
foreach (string Attach in Attachments)
{
mm.Attachments.Add(new Attachment(Attach));
}
try
{
smtp.Send(mm);
}
catch (SmtpException ex)
{
Errors.Add(ex.Message);
}
}
catch (Exception ex)
{
Errors.Add(ex.ToString());
}
return Errors;
}
Получающий жалобу получатель выглядит примерно так:
Тема: 21.01.2011 Еженедельное обновление контента-Тип: текст / HTML;charset = "utf-8" Content-Transfer-Encoding: base64
To: нераскрытые получатели :;
1011 * PGJhc2UgaHJlZj0iaHR0cDovL3d3dy5tdXR1YWxtZWQuY29tL2VtYWlscy8iIC8 + PGh0bWw + PCEtLSBJbnN0YW5jZUJlZ2luIHRlbXBsYXRlPSIvVGVtcGxhdGVzL3Rl bXBsYXRlLmR3dCIgY29kZU91dHNpZGVIVE1MSXNMb2NrZWQ9ImZhbHNlIiAtLT4N CjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50