EWS C#附件无法更新

时间:2016-07-08 10:16:16

标签: exchange-server exchangewebservices

我试图重命名EmailMessage对象中的附件。

msg.Attachments.Where(c => c.Name == attachmentPdfFullNames[0]).FirstOrDefault().Name = "NEW NAME ATTACHMENT";

但它会抛出异常附件无法更新。我尝试复制并更改名称,然后删除并重新添加附件,但同样:

Attachment a = msg.Attachments.Where(c => c.Name == attachmentPdfFullNames[0]).FirstOrDefault();
Attachment b = a;
b.Name = "NEW NAME ATTACHMENT";
msg.Attachments.Remove(a);
msg.Attachments.AddFileAttachment("./" + b.Name);

由于

1 个答案:

答案 0 :(得分:1)

您无法在EWS中重命名附件(只有创建和删除才能执行此操作)。因此,您需要删除要重命名的附件并重新附加它。

使用您的代码,您需要在删除后调用消息上的更新(这意味着代码执行操作),然后在重新添加附件之后再添加新附件,例如

 msg.Attachments.Remove(a);
 msg.Update(ConflictResolutionMode.AlwaysOverwrite);
 msg.Attachments.AddFileAttachment("./" + b.Name);
 msg.Update(ConflictResolutionMode.AlwaysOverwrite);