2015-08-28 64 views
2

我正在使用Outlook VSTO AdvancedSearch功能搜索各自的PR_MESSAGE_ID的邮件列表。等同的选择在哪里与Outlook DASL筛选器

我的查询看起来像

http://schemas.microsoft.com/mapi/proptag/0x1035001E = 'targetId1' OR 
http://schemas.microsoft.com/mapi/proptag/0x1035001E = 'targetId2' OR 
http://schemas.microsoft.com/mapi/proptag/0x1035001E = 'targetId3' OR 
http://schemas.microsoft.com/mapi/proptag/0x1035001E = 'targgetId4' ...etc. 

我质疑这种方法的性能,我想知道是否有一个更优雅的查询,类似于SELECT一些地方“MESSAGE_ID” IN(targetId1 ,targetId2等)

回答

0

不,AdvancedSearch是一个正确的选择,因为在后台执行搜索不会阻塞UI线程。此外,您可以搜索多个forlders中的项目。

所有的DASL查询都以区分大小写的前缀“@ SQL =”开头,除了DASH查询Application.AdvancedSearch以外。

查看Filtering Items其他替代品。

+0

我想你会误解,对不起,如果不明确。我编辑了这个问题。实际上,我不是在寻找另一种搜索方法,而是另一种DASL查询来传递给AdvancedSearch方法。 –

+0

请参阅[筛选项目](https://msdn.microsoft.com/en-us/library/office/ff863965.aspx)了解其他选择。 –

+0

我已经看过这个资源。我没有看到任何'包含'或'in'运算符。 –