2014-02-10 7 views
1

У меня есть код для отправки электронной почты. данные для электронной почты поступают от стороннего API, который будет выглядеть следующим образом: å эквивалент датского персонажа å. но по электронной почте отображается s å. Есть ли способ, которым я могу преобразовать этот, чтобы исправить?Невозможно декодировать датские символы для отправки по электронной почте

Мой код для отправки почты, как это

SmtpClient client = new SmtpClient(); 
      System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage(); 
      foreach (string toEmail in toEmails.Split(",".ToCharArray(), StringSplitOptions.RemoveEmptyEntries)) 
       mail.To.Add(toEmail.Trim()); 
      mail.Subject = subject; 
      mail.SubjectEncoding = System.Text.Encoding.UTF8; 
      mail.Body = body; 
      mail.BodyEncoding = System.Text.Encoding.UTF8; 
      mail.IsBodyHtml = isHtml; 
      mail.Priority = MailPriority.Normal; 

      if (attachments != null) 
      { 
       foreach (string key in attachments.Keys) 
       { 
        Attachment mailAttachment = new Attachment(attachments[key], key); 
        mail.Attachments.Add(mailAttachment); 
       } 
      } 
      client.Send(mail); 
      retValue = true; 

Примечание: Исправлена ​​проблема с использованием ответ L.B в. но у меня все еще есть некоторые проблемы, такие как enter image description here это. в моем теле письма

+0

Какой класс утилиты вы используете (HttpUtility/WebUtility) – Jageen

ответ

3

Использование HttpUtility или WebUtility класса

var str = HttpUtility.HtmlDecode("å"); 

var str = WebUtility.HtmlDecode("å"); 
+0

Ваш код работает правильно, это решить главный вопрос. но у меня все еще есть проблемы. пожалуйста, ознакомьтесь с обновленным вопросом – Athul

+0

@Athul a) Вероятно, у вас есть проблема с кодировкой, но я ничего не могу сказать, просто посмотрев на это изображение. б) После получения ответа расширение вопроса с помощью новых требований не является хорошим поведением. –

+0

Я действительно благодарен за то, что вы сделали. Но, поскольку вы можете видеть, что моя проблема никогда не была решена вашим ответом, это просто вызвало еще одну проблему (хотя я знаю, что ваш ответ абсолютно правильный для моего вопроса). Поэтому, пожалуйста, не говорите, как я распространил вопрос, чтобы поставить вас в плохую ситуацию. – Athul

Смежные вопросы