我有一个收集电子邮件收件箱,可以从多个系统获取通知。我能够按主题和流程成功搜索,但希望通过发送到的电子邮件地址进行搜索,因为主题正在变化和变化。似乎只按显示名称搜索,这是收集箱的名称,但我发送到别名。
db@domain.local
,otherdb@domain.local
,thisdb@domain.local
都指向一个收集帐户。
我喜欢这项工作
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, "to:'db@domain.local'", new ItemView(10));
然后我可以根据发送到地址设置不同的处理。
我尝试设置SearchFilter,但ItemSchema似乎没有提供SentTo,只提供DisplayTo。
SearchFilter.ContainsSubstring sentToFilter = new SearchFilter.ContainsSubstring(ItemSchema.DisplayTo, "db@domain.local", ContainmentMode.Substring, ComparisonMode.IgnoreCase);
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, sentToFilter, new ItemView(10));
以下是我发现搜索选项可以在查询中 https://msdn.microsoft.com/en-us/library/office/dn579420(v=exchg.150).aspx
答案 0 :(得分:0)
您正在使用ItemSchema
。请考虑使用包含EmailMessageSchema
的ToRecipients
。
答案 1 :(得分:0)
感谢@ Moo-Juice带我到EmailMessageSchema,我能够找到发送到InternetMessageHeaders架构的
SearchFilter.ContainsSubstring sentToFilter = new SearchFilter.ContainsSubstring(EmailMessageSchema.InternetMessageHeaders, "db@domain.local", ContainmentMode.Substring, ComparisonMode.IgnoreCase);
FindItemsResults<Item> findResults = service.FindItems(WellKnownFolderName.Inbox, sentToFilter, new ItemView(10));