我目前正在 Outlook 2010 上使用 EWS。我正在尝试根据“类别”字段查找用户的联系人。我基本上想返回其类别字段包含特定子字符串的每个联系人。下面是一个例子:
ExchangeService service = new ExchangeService
{
Credentials = new WebCredentials(user, password, domain),
Url = new Uri(exchangeUrl),
};
string searchString = "abc";
SearchFilter filter = new SearchFilter.ContainsSubstring(ItemSchema.Categories, searchString);
ItemView view = new ItemView(200);
Mailbox mailbox = new Mailbox("blah@blah.com");
FolderId folderId = new FolderId(WellKnownFolderName.Contacts, mailbox);
FindItemsResults<Item> results = service.FindItems(folderId, filter, view);
这当然会失败,因为类别字段现在令人讨厌的是 aStringList
而不是普通的字符串。我们所有的用户联系人只有 1 个与之关联的类别。有没有一种方法可以SearchFilter
通过仅在第一个 Category 上运行比较来使其工作?
请注意:由于我无法控制的原因,我不能使用 AQS 字符串。它们根本不是一种选择。我必须使用SearchFilter
对象(或其他一些机制来过滤结果)。