7

ViewSize是在构造函数级别指定的。我找到了构造函数的文档,但没有说明最大尺寸有多大。

4

3 回答 3

9

有 2,147,483,647 的限制,因为它的数据类型是 Int32,我使用它并测试它如果我们通过 ItemView(2147483647) 不会返回任何错误;

它只是定义了搜索项的页面大小,如果搜索项结果多于视图页面大小,则必须执行使用 ItemView 偏移量的后续调用才能返回其余结果。

参考 - http://msdn.microsoft.com/en-us/library/exchange/dd633693%28v=exchg.80%29.aspx http://msdn.microsoft.com/en-us/library/system.int32 .maxvalue.aspx

于 2013-02-28T16:14:26.087 回答
9

您可以在 ItemView 构造函数中指定 Int32 值,但只会返回一千个项目。您必须指定一个循环来获取剩余的项目。

        bool more = true;
        ItemView view = new ItemView(int.MaxValue, 0, OffsetBasePoint.Beginning);
        view.PropertySet = PropertySet.IdOnly;
        FindItemsResults<Item> findResults;
        List<EmailMessage> emails = new List<EmailMessage>();
        while (more)
        {
            findResults = service.FindItems(WellKnownFolderName.Inbox, view);
            foreach (var item in findResults.Items)
            {
                emails.Add((EmailMessage)item);
            }
            more = findResults.MoreAvailable;
            if (more)
            {
                view.Offset += 1000;
            }
        }
于 2015-05-26T07:24:10.113 回答
5

Exchange 中的默认策略将页面大小限制为 1000 个项目。将页面大小设置为大于此数字的值没有实际效果。应用程序还应考虑这样一个事实,即 EWSFindCountLimit 限制参数值可能会导致为发出并发请求的应用程序返回部分结果集。

http://msdn.microsoft.com/en-us/library/office/jj945066(v=exchg.150).aspx

于 2014-02-18T17:22:25.857 回答