Я пытаюсь отправить электронное письмо через C # и использую следующий код:
public static bool SendSMTPMail(string smtphost, int smtpport, string smtplogin, string smtppassword, string from, string to, string subject, string body, bool isHtml)
{
try
{
using (MailMessage message = new MailMessage(from, to, subject, body))
{
message.IsBodyHtml = isHtml;
message.SubjectEncoding = System.Text.Encoding.UTF8;
message.BodyEncoding = System.Text.Encoding.UTF8;
SmtpClient mailClient = new SmtpClient(smtphost, smtpport);
mailClient.EnableSsl = false;
mailClient.DeliveryMethod = SmtpDeliveryMethod.Network;
mailClient.Credentials = new NetworkCredential(smtplogin, smtppassword);
mailClient.Send(message);
return true;
}
}
catch
{
return false;
}
}
Он отлично работает, когда письма получены в Windows, но когда пользователь пытается прочитать их в MacOS, заголовок темы имеет неправильную кодировку. Если я установлю кодировку темы на Windows-1251, она будет работать хорошо, но только для кириллицы, и я тоже отправлю азиатскую ...
Как я могу отправлять электронные письма, используя чистый Юникод?
И второй вопрос - если я добавлю к письму какое-то вложение, оно будет добавлено с дополнительными файлами - "filelist.xml" и "header.htm".
Как от них избавиться?
Спасибо!