Проблема с форматом электронной почты - PullRequest
1 голос
/ 07 апреля 2011

У меня была проблема с форматом в электронной почте. Я хочу иметь новую строку ..

вот формат электронной почты ..

Name: sdds Phone: 343434 Fax: 3434 Email: valencia_arman@yahoo.com Address: dsds Remarks: dsds Giftwrap: Yes Giftwrap Instructions: sdds Details: PEOPLE OF THE BIBLE(SCPOTB-8101-05) 1 x Php 275.00 = Php 275.00 Total: Php275.00

вот мой код C # ..

mail.Body = "Name: " + newInfo.ContactPerson + Environment.NewLine
                                + "Phone: " + newInfo.Phone + Environment.NewLine
                                + "Fax: " + newInfo.Fax + Environment.NewLine
                                + "Email: " + newInfo.Email + Environment.NewLine
                                + "Address: " + newInfo.Address + Environment.NewLine
                                + "Remarks: " + newInfo.Notes + Environment.NewLine
                                + "Giftwrap: " + rbGiftWrap.SelectedValue + Environment.NewLine
                                + "Giftwrap Instructions: " + newInfo.Instructions + Environment.NewLine + Environment.NewLine
                                + "Details: " + Environment.NewLine
                                + mailDetails;

Ответы [ 3 ]

4 голосов
/ 07 апреля 2011

Если вы отправляете его в HTML, убедитесь, что вы установили формат.

mail.BodyFormat = MailFormat.Html;

И затем вы можете использовать <br/>, если хотите.

ОБНОВЛЕНИЕ:

Попробуйте это как альтернативу:

using System.Net.Mail;

...

MailMessage myMail;
myMail = new MailMessage();
myMail.IsBodyHtml = true;
1 голос
/ 07 апреля 2011

может быть, вы можете попробовать это ...

Мы создаем отдельные шаблоны электронной почты (например, EmailTemplate.htm), в него входит отправляемое сообщение. У вас не будет проблем с новой строкой в ​​сообщении.

Тогда это наш Код:

private void SendEmail()
{
   string emailPath = "../EmailTemplate.htm"; //Define your template path here
   string emailBody = string.Empty;

   StreamReader sr = new StreamReader(emailPath);

   emailBody = sr.ReadToEnd();
   sr.Close();
   sr.Dispose();

   //Send Email; you can refactor this out
   MailMessage message = new MailMessage();

   MailAddress address = new MailAddress("sender@domain.com", "display name");

   message.From = address;
   message.To.Add("to@domain.com");
   message.Subject = "Your Subject";
   message.IsBodyHtml = true; //defines that your email is in Html form
   message.Body = emailBody;

   //smtp is defined in web.config
   SmtpClient smtp = new SmtpClient();

   try
   {
      smtp.Send(message);
   }
   catch (Exception ex)
   {
      //catch errors here...
   }
}
0 голосов
/ 07 апреля 2011

Вы пробовали "+ \ n" вместо Environment.NewLine?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...