Exchange Web服务:更复杂的搜索筛选器

本文关键字:搜索 筛选 复杂 Web 服务 Exchange | 更新日期: 2023-09-27 18:22:26

在我使用EWS的前一个项目中,我的搜索条件要简单得多:在主题中查找带有"xxx"的电子邮件。

我现在正在将这段代码构建成一个更加多用途的应用程序;我将根据各种标准监控各种邮箱,例如:

Find all mail items where the recipient is "email@example.com", AND subject contains "xxx" AND (body contains "yyy" OR body contains "zzz")

然而,使用SearchFilterCollection,尽管我可以添加多个SearchFilters,但我不知道如何应用不同的逻辑运算符。。。每个SearchFilterCollection似乎有一个逻辑运算符:

SearchFilterCollection sfc = new SearchFilterCollection(LogicalOperator.Or, new SearchFilter.ContainsSubstring(ItemSchema.Subject, "Test"));

我想一个解决方案是找到所需邮件项目的超集,然后在稍后处理时更准确地过滤它们。但我想知道一开始是否有更好的过滤方式,使用SearchFilters或任何其他方式?

Exchange Web服务:更复杂的搜索筛选器

您可以使用SearchFilter.SearchFilterCollection (LogicalOperator, SearchFilter[]) 构建复杂的搜索过滤器

检查:如何:在EWS Managed API 1.0 中使用SearchFilter和SearchFilterCollection构建复杂的搜索