【问题标题】:How to filter all EWS items by excluding those which match Id's from list如何通过从列表中排除与 Id 匹配的项目来过滤所有 EWS 项目
【发布时间】:2017-05-19 13:19:56
【问题描述】:

当我在所选文件夹中找到所有项目时,我希望能够根据项目 ID 应用 SearchFilter。

我可以轻松获取所有项目,然后使用 linq 应用 where 子句,如

(w => !uniqueItemIdList.Contains(w.Id.UniqueId))

但问题是,这将是在它提取了 1000 件邮件之后,而不是在最初找到这些邮件期间。

我的目标是将所有电子邮件复制到数据库,然后通过排除具有匹配唯一 ID 的电子邮件,仅提取我尚未复制的电子邮件。

到目前为止,一切都表明这是不可能的,我只能搜索单个字段,如 FolderId = "..." 或包含 "..." 的主题,没有提及列表或排除。

任何帮助将不胜感激。

【问题讨论】:

    标签: c# exchange-server ews-managed-api


    【解决方案1】:

    ItemId 不是可搜索的属性,因此您尝试使用 SearchFilter 执行的操作将不起作用。 SyncFolderItems https://msdn.microsoft.com/en-us/library/office/aa563967(v=exchg.150).aspx 确实允许基于 ItemId 的排除列表(但我认为对于大量无法扩展的项目),更简单的解决方案是使用基于项目创建日期的 SearchFilter。

    【讨论】:

      猜你喜欢
      • 2012-10-27
      • 1970-01-01
      • 2014-04-06
      • 1970-01-01
      • 2020-08-31
      • 2013-04-22
      • 2016-05-26
      • 1970-01-01
      • 2021-11-18
      相关资源
      最近更新 更多