简体   繁体   English

如果返回的记录数低于 5000,这会失败吗?

[英]Will this fail if the returned number of records is below 5000?

I have a multirequest for a QueryExpression that I wrote.我有一个对我编写的 QueryExpression 的多请求。 In some cases, more than five thousand records are returned, while in others less than 5000 records are returned.在某些情况下,返回的记录超过 5000 条,而在其他情况下,返回的记录少于 5000 条。 I am worried that this would fail if the count is less than 5000. Is this true?!我担心如果计数小于 5000,这会失败。这是真的吗?!

 QueryExpression queryService = conversionResponse.Query;
                int pageNumber = 1;
                RetrieveMultipleRequest multiRequest;
                RetrieveMultipleResponse multiResponse = new RetrieveMultipleResponse();

                do
                {
                    queryService.PageInfo.Count = 5000;
                    queryService.PageInfo.PagingCookie = (pageNumber == 1) ? null : multiResponse.EntityCollection.PagingCookie;
                    queryService.PageInfo.PageNumber = pageNumber++;

                    multiRequest = new RetrieveMultipleRequest
                    {
                        Query = queryService
                    };
                    multiResponse = (RetrieveMultipleResponse)service.Execute(multiRequest);

                    Allergies.Entities.AddRange(multiResponse.EntityCollection.Entities);
                } while (multiResponse.EntityCollection.MoreRecords);

Should be fine in either case.在任何一种情况下都应该没问题。

There is an MSDN example for something similiar here;这里有一个类似的 MSDN 示例; Sample: Use QueryExpression with a paging cookie. 示例:将 QueryExpression 与分页 cookie 一起使用。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM