Exchange Web服务:更复杂的SearchFilters

时间:2012-02-02 11:08:25

标签: c# exchangewebservices

在之前使用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或任何其他方式?

1 个答案:

答案 0 :(得分:7)

您可以使用SearchFilter.SearchFilterCollection (LogicalOperator, SearchFilter[])

构建复杂的Searchfilter

检查:HOW TO: Build a complex search using SearchFilter and SearchFilterCollection in EWS Managed API 1.0