2012-05-31 2 views
2

Есть ли способ просмотра электронной почты с помощью MailMessage, а не отправки сообщения. Я использую SmtpClient для отправки сообщений, но в некоторых случаях электронная почта должна быть проверена, а затем вручную отправлена ​​пользователем.Использование MailMessage для просмотра электронной почты

+0

В некоторых случаях или во всех случаях? Каков контекст, в котором отправляется электронная почта - соответствующее решение может быть различным в зависимости от этого. – dxbmatt

+0

Вы должны использовать какую-либо другую технику для проверки своей электронной почты перед отправкой, я не думаю, что для этого используется почта. Это объект, используемый для отправки электронной почты – Talha

ответ

0

Нет встроенного метода в SmtpClient класс для рассмотрения электронной почты. Вы должны вручную просмотреть сообщение.

Перед отправкой вам необходимо просмотреть письмо по электронной почте manully.

Вы можете использовать объект WebBrowser, чтобы просмотреть часть тела сообщения электронной почты, чтобы узнать, как получатель увидит письмо.

Другие отзывы также должны быть сделаны вручную.

0

Самый простой способ - сохранить его как сообщение MIME (.eml) во временный файл, а затем запустить его с помощью зарегистрированного средства просмотра сообщений (например, Windows Live Mail или Thunderbird).

Для того, чтобы сохранить файл MailMessage в файл, вы можете использовать метод расширения Save, указанный в данном коде Код статьи: Adding Save() functionality to Microsoft.Net.Mail.MailMessage.

MailMessage message = new MailMessage 
{ 
    Subject = "Test", 
    Body = "Hello world", 
    From = new MailAddress("[email protected]"), 
}; 
message.To.Add(new MailAddress("[email protected]")); 

string tempEmlPath = Path.Combine(
    Path.GetTempPath(), 
    Guid.NewGuid().ToString() + ".eml"); 

message.Save(tempEmlPath); 

Process.Start(tempEmlPath); 
Смежные вопросы