Пересылка электронной почты с использованием управляемого API EWS с сохранением заголовков - PullRequest
2 голосов
/ 12 октября 2011

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

При пересылке есть ли способ сохранить оригинальные заголовки сообщения при его пересылке? например, кто-то отправил мне электронное письмо - мне бы хотелось, чтобы ews пересылал его другому получателю без изменения заголовков (время первоначального получения от, скрытая копия и т. д.).

1 Ответ

7 голосов
/ 12 октября 2011

Учитывая объект EmailMessage, вы можете просто вызвать метод CreateForwareMessage ():

var forwareMessage = item.CreateForward();

По поводу другого вопроса: получить MIME-содержимое письма и прикрепить его к новому сообщению:

item.Load(new PropertySet(BasePropertySet.IdOnly, ItemSchema.MimeContent));
var mail = new EmailMessage(service);
var attachment = mail.Attachments.AddFileAttachment("Original message.eml", item.MimeContent.Content);
attachment.ContentType = string.Format("message/rfc822; charset={0}", item.MimeContent.CharacterSet);
mail.ToRecipients.Add("hkrause@infinitec.de");
mail.Subject = "testmail";
mail.SendAndSaveCopy();

РЕДАКТИРОВАТЬ:

Создать переслать сообщение и установить ответ на заголовок:

var fw = item.CreateForward();
var fwMsg = fw.Save(WellKnownFolderName.Drafts);
fwMsg.ReplyTo.Add("personA@company.com");
fwMsg.SendAndSaveCopy();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...