我试图使用过滤器上SearchFilter.ContainsSubstring Exchange Web服务的电子邮件如下:EWS SearchFilter.ContainsSubstring要过滤的发件人的电子邮件地址
sfilter = New SearchFilter.ContainsSubstring(EmailMessageSchema.Sender, EmailAddress, ContainmentMode.Substring, ComparisonMode.IgnoreCase)
MailItems = service.FindItems(Folder.Id, sfilter, view)
不幸的是,这并不工作,我不想要使用查询,因为我不能保证我可以使用Exchange Server 2013的功能。
在Fiddler中编写各种请求,我可以观察到如果我删除电子邮件地址的最后一个字符,那么过滤器的作品,删除第一个字符,工程 - 把他们回来,破碎。
所以也许它是迂腐的,它必须是一个真正的子字符串来限定,所以如果我改变包容模式为FullString - 它不起作用,所以我不能做任何事情像一个集合与子字符串或FullString 。
它看起来像我将能够做到的(最后一个字符缺失的子字符串和第一个字符缺失的子字符串),但它肯定不能被破坏吗?
我能做些什么才能使其发挥作用?
请注意,我的代码是在VB.NET中,但我无法想象这是问题所在。
干杯,
马克
我注意到,有更多的从不是一个简单的文本字符串/发件人特性,但使用SearchFilter,你需要一个propertyBase对象。什么是来自电子邮件地址字符串的PropertyBase对象?我找不到一个。 – 2015-02-12 10:00:40