我正在寻找有关如何使用托管 API 转发现有电子邮件(我的收件箱中已有)的示例代码。
转发时有没有办法在转发时保留邮件的原始 header ? 例如,有人向我发送了一封电子邮件 - 我希望 ews 将它转发给另一个收件人而不更改标题(原始接收时间,密件抄送等...)。
最佳答案
给定一个 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();
关于exchange-server - 使用保留 header 的 EWS 托管 API 转发电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7732911/