【发布时间】:2014-07-31 10:58:41
【问题描述】:
我们遇到了作为附件转发的富文本电子邮件的问题,其中 ContentIDs 被从附件中删除,这使我们无法正确重建电子邮件。
这是 EWS 对带有图片的富文本电子邮件的示例响应
<t:ItemAttachment>
<t:AttachmentId Id="AAMkAGRlNWE5MTc1LTUyODktNDRjNi05NTcwLWZjZGM1ODNkMmUxYwBGAAAAAABtOoJbAYfVSZzEDvklEbbPBwBBckyCi9TiT4cjPa5DHYwwAAAAemCwAABBckyCi9TiT4cjPa5DHYwwAABknfz6AAABBgAEAAAAAAA="/>
<t:Name>Message with Attachments</t:Name>
<t:Size>97993</t:Size>
<t:LastModifiedTime>2014-06-10T13:19:25</t:LastModifiedTime>
<t:IsInline>false</t:IsInline>
<t:ContentId>F4880FA606E4DC9BBC5143C97C52AC554A3AE55B@1</t:ContentId>
</t:ItemAttachment>
这是作为附件转发的同一电子邮件:
<t:FileAttachment>
<t:AttachmentId Id="AAMkAGRlNWE5MTc1LTUyODktNDRjNi05NTcwLWZjZGM1ODNkMmUxYwBGAAAAAABtOoJbAYfVSZzEDvklEbbPBwBBckyCi9TiT4cjPa5DHYwwAAAAemCwAABBckyCi9TiT4cjPa5DHYwwAABknfz6AAACBgAEAAAAAAAGAAQAAQAAAA=="/>
<t:Name>Picture (Device Independent Bitmap)</t:Name>
<t:Size>5210</t:Size>
<t:LastModifiedTime>2014-06-10T13:19:25</t:LastModifiedTime>
<t:IsInline>true</t:IsInline>
</t:FileAttachment>
注意 - 交易所 2010 SP2 EWS API v2.2(也出现在 2.0 中)
我的问题是:
- 这是预期的行为吗? (如果是,为什么?)
- 这是否可以在交流中配置(不是正确的论坛 - 但仍然)
- 如果它是可配置的,那么该配置的含义是什么。
我很快就会在这里打开一个 MSFT 支持事件。
重建步骤:
- 新消息
- 将消息设置为富文本
- 附加图片
- 发送电子邮件
- 打开电子邮件
- 作为附件转发到另一封富文本电子邮件(这也可以通过将消息保存到磁盘然后手动附加来完成)
【问题讨论】:
-
您查看过 PidTagRtfCompressed 扩展属性的内容是否包含在其中吗?
-
@MimiGentz 您是否有使用 EWS 2.2 API 的示例?我似乎无法在任何地方找到它。
-
要检索 PidTagRtfCompressed 属性,请使用:
ExtendedPropertyDefinition PidTagRtfCompressed = new ExtendedPropertyDefinition(0x1009, MapiPropertyType.Binary);PropertySet propSet = new PropertySet(BasePropertySet.IdOnly, EmailMessageSchema.Subject, PidTagRtfCompressed);EmailMessage message = EmailMessage.Bind(service, ItemId, propSet);我不确定该属性是否还包含原始附件的 RTF。
标签: c# email exchange-server exchangewebservices