我当前正在尝试配置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并模拟回复)?
答案 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