Podczas odbierania wiadomości e-mail wysłanych z numerem System.Net.Mail.MailMessage
wydaje się, że niektórzy odbiorcy mają problemy z kodowaniem wiadomości e-mail. Na przykład charachter ä jest wyświetlany jako ä. Ustawiłem właściwości kodowania:Nieprawidłowe kodowanie w wiadomościach e-mail wysłanych za pomocą System.Net.Mail.MailMessage
System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();
...
msg.BodyEncoding = System.Text.Encoding.UTF8;
msg.SubjectEncoding = System.Text.Encoding.UTF8;
Co jeszcze mogę zrobić?
Aktualizacja:
Gdybym użyć właściwości Body
e-mail jest wyświetlany poprawnie, ale kiedy użyć właściwości AlternateViews
e-mail jest wyświetlany nieprawidłowo.
Kompletny kod:
SmtpClient smtpClient = new SmtpClient("some.host.com");
MailMessage msg = new MailMessage();
msg.To.Add("[email protected]");
msg.From = new MailAddress("[email protected]", "Name Name");
msg.Subject = "Test";
//Displays as ä
//msg.Body = "ä";
// Displays as ä
AlternateView htmlView = AlternateView.CreateAlternateViewFromString("ä", new ContentType(MediaTypeNames.Text.Html));
msg.AlternateViews.Add(htmlView);
smtpClient.Send(msg);
Wysyłając do Gmaila adres e-mail jest wyświetlany poprawnie, ale przy wysyłaniu do serwera Exchange e-mail jest wyświetlany nieprawidłowo. Testowałem w .NET 3.5 i 4.5.
Która wersja .NET używasz? –
Czy możesz dodać swój pełny kod pocztowy, aby spróbować odtworzyć to? –
Pytanie zaktualizowane. –