Итак, я создаю сценарий автоматической отправки электронной почты, который будет отправлять квитанции сотрудникам, когда они регистрируют проблему, для электронной почты необходимо разрешить HTML
.
Однако, когда я извлекаю описание избазы данных и отображать ее на внешнем интерфейсе (asp:textbox
) .aspx page
, она отображается с новыми символами строки, отформатированными должным образом, но когда я отправляю описание через SMTP получателям, разрывы строк (символы новой строки) не переносяттекст в новую строку.
Например: строка примера: "Боб - человек, \ n и ему нравится баскетбол". В asp:textbox
контролирует, как он рендерится правильно, но при отправке по электронной почте - нет.
Что за трещина в этом?Нужно ли заменять \n
на HTML
разрывы по мере их прохождения или вы можете их сохранить?
Вот основная идея сценария:
SmtpClient client = new SmtpClient();
client.Port = 587;
client.Host = "smtp.outlook.com";
client.EnableSsl = true;
client.Timeout = 10000;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = false;
client.Credentials = new System.Net.NetworkCredential(serverEmail, serverEmailAuthToken);
MailMessage mm = new MailMessage(serverEmail, recipient, "Tasket Report Number: "
+ tasketTitle + " has been received.",
"Tasket Report Number: " + tasketTitle + "<br/>"
+ "Problem Domain: " + domain + "<br/>"
+ "Report Type: " + type + "<br/>"
+ "Report Area: " + area + "<br/>"
+ "Description: " + description
+ "<br/>");
mm.IsBodyHtml = true;
mm.BodyEncoding = UTF8Encoding.UTF8;
mm.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
client.Send(mm);