我想使用EWS API从OWA检索电子邮件文件夹(参见下面的屏幕截图)
这是我的代码:
FolderView folderView = new FolderView(MAX_VALUE);
FindFoldersResults findFoldersResults = service.findFolders(WellKnownFolderName.MsgFolderRoot, folderView);
返回的结果包含所有类型的文件夹:约会,电子邮件,消息,联系人等。
Calendar
Contacts
{06967759-274D-40B2-A3EB-D7F9E73727D7}
{A9E2BC46-B3A0-4243-B315-60D991004455}
Recipient Cache
Conversation Action Settings
custom folder
Deleted Items
Drafts
Inbox
Journal
Junk Email
Notes
Outbox
Sent Items
Tasks
如何检索仅电子邮件文件夹?
答案 0 :(得分:1)
您可以使用SearchFilter过滤掉隐藏的文件夹,例如
ExtendedPropertyDefinition isHiddenProp = new ExtendedPropertyDefinition(0x10f4, MapiPropertyType.Boolean);
FindFoldersResults findFolder = service.FindFolders(WellKnownFolderName.MsgFolderRoot,
new SearchFilter.IsEqualTo(isHiddenProp, false), folderView);
您还可以通过在FolderClass上过滤来过滤掉非联系人,日历等非邮件文件夹(例如,对邮箱文件夹使用IPF.Note)。但它可能只是通过在返回时检查类型来过滤客户端。
答案 1 :(得分:0)
尝试使用WellKnownFolderName.Inbox
。然后,您将只从“收件箱”文件夹中检索子文件夹。
FindFoldersResults findFoldersResults = service.findFolders(WellKnownFolderName.Inbox, folderView);