使用EWS托管API更改回复时的发件人

时间:2018-12-01 21:02:34

标签: c# .net exchangewebservices

我当前正在尝试配置Mail2Bug以便在新电子邮件到达共享邮箱时在Azure DevOps中创建错误。一切进展顺利,直到需要回复传入消息的部分为止。

处理此功能的代码可以在EWSIncomingMessage.cs中找到:

 public void Reply(string replyHtml, bool replyAll)
 {
     //_message is of type EmailMessage
     var reply = _message.CreateReply(replyAll);
     reply.BodyPrefix = new MessageBody(BodyType.HTML, replyHtml);
     reply.Send();
 }

它不使用共享邮箱的电子邮件进行回复,而是使用经过身份验证的用户的电子邮件。我认为这与CreateReply如何结合EWS填充回复MailMessage有关。

有没有解决的方法(可能是通过创建新的MailMessage并模拟回复)?

1 个答案:

答案 0 :(得分:1)

您可以参考以下代码:

var message = (EmailMessage) Item.Bind(service, new ItemId(uniqueId), PropertySet.FirstClassProperties);
var reply = message.CreateReply(false);
reply.BodyPrefix = "Response text goes here";
var replyMessage = reply.Save(WellKnownFolderName.Drafts);
replyMessage.Attachments.AddFileAttachment("d:\\inbox\\test.pdf");
replyMessage.Update(ConflictResolutionMode.AlwaysOverwrite);
replyMessage.SendAndSaveCopy();

有关更多信息,请参阅以下链接:

Replying with attachments to an email message with EWS

How to reply to an email using the EWS Managed API?

Respond to email messages by using EWS in Exchange