C# -EWS - 在 Outlook 电子邮件的 Exchange 服务上设置自定义属性
C# -EWS - Setting custom properties on Exchange service for Outlook email
我想在电子邮件中保存一个布尔值 属性。如果用户点击我的插件按钮,我想将选定的电子邮件标记为已处理。使用 MailItem class 的 UserProperties 将在本地文件夹中更新它。
- 不在 Exchange 服务器上,对吧?
- 如果我想阻止对同一封邮件执行第二次操作,比方说在重新安装 Outlook 之后,或者在另一台机器上使用相同的 Outlook 配置文件,我应该怎么做才能避免这种情况?
非常感谢
Not on the Exchange server, right?
这取决于配置文件中使用的 Exchange 连接模式 - 缓存与否。在非缓存模式的情况下,您的更改将传播到服务器端。如果您处于缓存模式,您的更改将保存到本地存储,直到 you/Outlook 将您的更改与服务器同步。您可以通过编程方式启动此类操作,有关详细信息,请参阅 How To: Perform Send/Receive in Outlook programmatically。
If i'd like to prevent a second operation execution on same mail, let's say after re-installing Outlook, or using same Outlook profile in another machine, what should I do to avoid this?
我建议创建一个独立的 Web 服务,您可以在其中传递生成的项目的 ID(例如哈希)并检查是否需要添加用户 属性 以防止重复。或者只是使用 EWS 检查是否已经设置了 属性。
您使用 Outlook 对象模型读取或设置的任何 属性,您都可以使用 EWS 进行访问。 Outlook 用户属性值存储为常规命名的 MAPI 属性;它们存储在服务器上的项目上,而不仅仅是本地。
读取数据时只需要请求扩展属性即可。参见 https://docs.microsoft.com/en-us/previous-versions/office/developer/exchange-server-2010/dd633697(v%3Dexchg.80)。
您可以在 OutlookSpy(我是其作者)中查看现有属性及其值 - 单击 IMessage 按钮查看 MAPI 级别的属性(您还可以查看 DASL 属性 名称您将需要在 EWS 中使用)。或单击 EWS | GetItem查看EWS级别的数据。
我想在电子邮件中保存一个布尔值 属性。如果用户点击我的插件按钮,我想将选定的电子邮件标记为已处理。使用 MailItem class 的 UserProperties 将在本地文件夹中更新它。
- 不在 Exchange 服务器上,对吧?
- 如果我想阻止对同一封邮件执行第二次操作,比方说在重新安装 Outlook 之后,或者在另一台机器上使用相同的 Outlook 配置文件,我应该怎么做才能避免这种情况?
非常感谢
Not on the Exchange server, right?
这取决于配置文件中使用的 Exchange 连接模式 - 缓存与否。在非缓存模式的情况下,您的更改将传播到服务器端。如果您处于缓存模式,您的更改将保存到本地存储,直到 you/Outlook 将您的更改与服务器同步。您可以通过编程方式启动此类操作,有关详细信息,请参阅 How To: Perform Send/Receive in Outlook programmatically。
If i'd like to prevent a second operation execution on same mail, let's say after re-installing Outlook, or using same Outlook profile in another machine, what should I do to avoid this?
我建议创建一个独立的 Web 服务,您可以在其中传递生成的项目的 ID(例如哈希)并检查是否需要添加用户 属性 以防止重复。或者只是使用 EWS 检查是否已经设置了 属性。
您使用 Outlook 对象模型读取或设置的任何 属性,您都可以使用 EWS 进行访问。 Outlook 用户属性值存储为常规命名的 MAPI 属性;它们存储在服务器上的项目上,而不仅仅是本地。
读取数据时只需要请求扩展属性即可。参见 https://docs.microsoft.com/en-us/previous-versions/office/developer/exchange-server-2010/dd633697(v%3Dexchg.80)。
您可以在 OutlookSpy(我是其作者)中查看现有属性及其值 - 单击 IMessage 按钮查看 MAPI 级别的属性(您还可以查看 DASL 属性 名称您将需要在 EWS 中使用)。或单击 EWS | GetItem查看EWS级别的数据。