【问题标题】:EWS Managed API best method to use FindItemsEWS 托管 API 使用 FindItems 的最佳方法
【发布时间】:2013-03-26 05:30:03
【问题描述】:

在 EWS 托管 API 中,您可以执行以下操作:

Folder inbox = Folder.Bind(service, WellKnownFolderName.Inbox);
inbox.FindItems(...)

或者你可以这样做:

service.FindItems(WellKnownFolderName.Inbox, filter, view);

如此处所述:http://msdn.microsoft.com/en-us/library/exchange/dd633693(v=exchg.80).aspx

这两种方法有什么区别?哪个是首选? (我认为你真的不需要绑定到文件夹?)

【问题讨论】:

    标签: c# exchangewebservices ews-managed-api


    【解决方案1】:

    Folder.Bind 允许你绑定你想要的文件夹。如果您有权限,您甚至可以绑定到其他用户的文件夹。或者恢复 FolderID 后的任何文件夹(您可以将其用作参数)

    例如,如果我是 Exchange 管理员,我想获取 smtp 地址为“john.snow@mail.com”的用户的根文件夹,我会这样绑定到该文件夹​​:

    Folder FolderBind =
                       Folder.Bind(service, new FolderId
                           (WellKnownFolderName.MsgFolderRoot, "john.snow@mail.com));
    

    一旦你用你想要的任何文件夹加载了 FolderBind,你就可以使用其他方法,因为它接收到你可能不知道的 Folder.ID 参数。但是感谢 Folder.Bind,您拥有“john.snow@mail.com”的MsgFolderRoot 的 FolderID,因此您可以使用以下命令在他的项目中执行搜索:

    FindItemsResults<Item> findResults = service.FindItems(FolderBind.Id, searchFilter, view);
    

    我不知道我是否说清楚了。我有更多的疑问就问吧。

    编辑:

    您可以为 FindItems 提供一个精制的 searchFilter,它允许您获取项目 满足一些要求。就像搜索带有附件的电子邮件一样。搜索电子邮件 早于某个日期。等。

    这里是一个例子:

    List<SearchFilter> searchORFilterCollection = new List<SearchFilter>();
                searchORFilterCollection.Add( new SearchFilter.IsEqualTo(EmailMessageSchema.HasAttachments, true));
                searchORFilterCollection.Add(new SearchFilter.IsLessThan(EmailMessageSchema.DateTimeReceived,DateTime.Now.AddMonths(-3)));
    
    
    SearchFilter searchFilter= new SearchFilter.SearchFilterCollection(LogicalOperator.And,searchORFilterCollection.ToArray());
    

    【讨论】:

    • 好的,这部分说清楚了:如果你想以管理员身份在其他用户文件夹中搜索。 (约翰·斯诺 hèhè ;-))
    • 是的。我使用此代码将电子邮件从 Lotus 迁移到 Exchange。真的很有用。使用 folderbind 获取您需要的任何文件夹的文件夹信息。然后使用 findResults 获取项目。您可以在 SearchFilter 中指定一些过滤器,例如带有附件的电子邮件、日期早于...的电子邮件。
    猜你喜欢
    • 2022-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-30
    • 1970-01-01
    • 1970-01-01
    • 2015-12-20
    相关资源
    最近更新 更多