Я отправляю электронное письмо, используя платформу dotnet. Вот шаблон, который я использую для создания сообщения:
Date of Hire: %HireDate%
Annual Salary: %AnnualIncome%
Reason for Request: %ReasonForRequest%
Name of Voluntary Employee: %FirstName% %LastName%
Total Coverage Applied For: %EECoverageAmount%
Guaranteed Coverage Portion: %GICoveragePortion%
Amount Subject to Medical Evident: %GIOverage%
Когда сообщения получены в outlook, outlook сообщает мне: «В этом сообщении были удалены дополнительные разрывы строк». И сообщение выглядит так:
Date of Hire: 9/28/2001
Annual Salary: $100,000
Reason for Request: New Hire
Name of Voluntary Employee: Ronald Weasley Total Coverage Applied For: $500,000 Guaranteed Coverage Portion: $300,000.00 Amount Subject to Medical Evident: $200,000
Обратите внимание, как Outlook некорректно удаляет необходимые разрывы строк после имени, EECoverageAmount и т. Д ...
Для получателей электронной почты важно правильно отформатировать электронную почту, и я должен предположить, что некоторые из них используют outlook 2003. Я также не могу предположить, что они будут знать достаточно, чтобы отключить функцию автоочистки, чтобы получить сообщение для форматирования должным образом.
Я просматривал эти сообщения в других почтовых клиентах, и они отображаются правильно
дополнительная информация:
- Я использую кодирование BodyEncoding UTF-8 (msg.BodyEncoding = System.Text.Encoding.UTF8)
- Сообщение msg.Body читается из текстового файла в кодировке UTF-8, и каждая строка заканчивается символом crlf.
Вопрос:
Как мне изменить формат сообщения, чтобы избежать этой проблемы?