从EWS创建Outlook用户属性

时间:2014-08-07 13:24:15

标签: c# outlook exchangewebservices

我尝试创建一个应用程序来确定进入Exchange收件箱的电子邮件的属性,并将这些电子邮件的属性存储在UserProperties中,以便可以在Microsoft Outlook中查看它们。

设置我当前所知的Outlook电子邮件的UserProperties的唯一方法是通过Outlook Addin API中的MailItem对象。但是,我不希望这些属性的设置依赖于打开Outlook的用户,以便Addin可以运行。理想情况下,无论用户是否打开Outlook,都会发生用户属性的设置。

考虑到这一点,我转向EWS,这是一个通过Exchange服务器而不是Microsoft Outlook访问Exchange电子邮件的库。遗憾的是,EWS中的EmailMessage对象公开了与MailItem的UserProperties属性不同的自定义属性对象(ExtendedProperties)。因此,我不确定如何在EWS中设置UserProperties。

我发现这个StackOverflow答案(Access Outlook user properties from EWS)显示了如何获取已设置的用户属性。我想为以前没有设置过的EmailMessage设置用户属性。

所以底线问题是:如何使用EWS设置EmailMessage的UserProperties?

谢谢!

1 个答案:

答案 0 :(得分:0)

Outlook将属性的定义存储在另一个命名的MAPI属性中(如果选择具有用户属性集的消息并单击“IMessage”按钮,则可以在OutlookSpy中看到它)。实际值存储在另一个MAPI属性

如果Outlook视图配置为显示特定用户属性,则即使缺少具有定义的blob,也会显示属性值。

尝试只设置属性值...