是否可以保存ItemAttachment?对于FileAttachment,我们使用以下EWS托管API代码进行保存,
if(attachment is FileAttachment) { FileAttachment fAttachment = new FileAttachment(); fAttachment.Load("D:\\Stream" + fAttachment.Name); }
那么ItemAttachment呢?我们如何在指定的文件中保存这样的ItemAttachment?
解决方法
当然这不是一个紧迫的问题,但我想我会分享给未来的人,就像我一样.
对于ItemAttachments,你需要加载项目的MimeContent,然后你可以简单地写入文件/输出[“.eml”,“.msg”]:
if (attachment is FileAttachment) { FileAttachment fileAttachment = attachment as FileAttachment; // Load attachment contents into a file. fileAttachment.Load(<file path>); } else // Attachment is an ItemAttachment (Email) { ItemAttachment itemAttachment = attachment as ItemAttachment; // Load Item with additionalProperties of MimeContent itemAttachment.Load(EmailMessageSchema.MimeContent); // MimeContent.Content will give you the byte[] for the ItemAttachment // Now all you have to do is write the byte[] to a file File.WriteAllBytes(<file path>,itemAttachment.Item.MimeContent.Content); }