在我之前使用 EWS 的项目中,我的搜索条件要简单得多:查找主题中包含“xxx”的电子邮件。
我现在正在将这段代码构建到一个更多用途的应用程序中;我将根据各种标准监控各种邮箱,例如:
查找收件人为“email@example.com”且主题包含“xxx”且(正文包含“yyy”或正文包含“zzz”)的所有邮件项目
但是,使用 SearchFilterCollection,虽然我可以添加多个 SearchFilters,但我看不到如何应用不同的逻辑运算符……每个 SearchFilterCollection 似乎只有一个逻辑运算符:
SearchFilterCollection sfc = new SearchFilterCollection(LogicalOperator.Or, new SearchFilter.ContainsSubstring(ItemSchema.Subject, "Test"));
我想一个解决方案是找到所需邮件项目的超集,然后在处理它们时更准确地过滤它们。但是我想知道一开始是否有更好的过滤方式,使用 SearchFilters 或任何其他方式?
最佳答案
您可以使用 SearchFilter.SearchFilterCollection (LogicalOperator, SearchFilter[])
构建复杂的 Searchfilter
检查:HOW TO: Build a complex search using SearchFilter and SearchFilterCollection in EWS Managed API 1.0
关于c# - Exchange Web 服务 : More Complex SearchFilters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9111267/