Я использую класс MailMessage в моей программе.Когда предмет слишком длинный, предмет будет выглядеть так.
Тема:
=?utf-8?B?W0VudGVycHJpc2UgUHJpb3JpdHldIC0gQ3VzdG9tZXIgSW5jaWRlbnQgNjkxNzIgZm9yIEhhcmlkaGFyYW4gKDEzMjM5OSkgaGFyaWRoYXJhbnJAc3luY2Z1c2lvbi5jb20gOiBUZXN0aW5nIFRlc3RpbmcgVGVzdGluZyBUZXNpbmcgVGVzdGluZyBUZXN0aW5nIFRlc3RpbmcgVGVzdGluZyBUZXN0aW5nIFRlc3Rpbmcg4o"
Эта проблема возникла только на сервере.во время отладки я использовал тот же предметный контент в своем «локальном», но получил правильный предмет.
Программа:
protected MailMessage msg;
msg.Subject = subject;
Получил тот же (ошибка) предмет в WebMail.IHostExchange.NET также.
В чем проблема?
Обновление:
Это часть моего кода.
public EmailSenderThread(string emailAddresses, string ccemailaddress, string from, string subject, string body)
: base()
{
msgThread = new Thread(new ThreadStart(MailSender));
this.mailAddress = emailAddresses;
this.ccmailAddress = ccemailaddress;
msg.From = new MailAddress(from);
msg.IsBodyHtml = true;
msg.Body = body;
string[] mails = emailAddresses.Split(';');
foreach (string mail in mails)
if (!string.IsNullOrEmpty(mail))
msg.To.Add(mail);
if (ccemailaddress != string.Empty)
{
string[] ccemails = ccemailaddress.Split(';');
foreach (string ccmail in ccemails)
if (!string.IsNullOrEmpty(ccmail))
msg.CC.Add(ccmail);
}
msg.Subject = subject;
msgThread.Start();
}
Я уже пробовал с
msg.SubjectEncoding = System.Text.Encoding.UTF8;
но я получил ту же ошибку.Ты получил мое сомнение.Пожалуйста, дайте мне знать, если я не объяснил чётко.
1) Почему он работает нормально на местном уровне?и почему это не работает, когда я размещаю это на сервере.?
2) Какова максимальная длина строки темы?