【问题标题】:Is it possible to limit the amount of results returned in a response when using a QueryExpression in CRM 4在 CRM 4 中使用 QueryExpression 时是否可以限制响应中返回的结果数量
【发布时间】:2011-03-15 05:48:30
【问题描述】:

基本上我有一个返回 3000 多个结果的 QueryExpression。我只需要使用其中的 50 到 200 个。如果我使用的是普通 sql,我可以使用 SELECT TOP 200 ..... 有没有办法在 CRM 中使用 QueryExpression 或 FetchXML 做到这一点?

【问题讨论】:

    标签: dynamics-crm fetchxml


    【解决方案1】:

    在查询表达式中:

    QueryExpression query = new QueryExpression(); 
    query.PageInfo = new PagingInfo();
    query.PageInfo.Count = 200; // or 50, or whatever
    query.PageInfo.PageNumber = 1;
    

    在获取 XML 中:

    <fetch mapping='logical' page='1' count='200'>
    ...
    

    【讨论】:

    • 这在 CRM 2013 中也是一样的(只是使用了 FetchXML 部分)
    • 我认为,需要的是 QueryExpression 的 TopCount 属性
    【解决方案2】:

    @Matt 基本上说的都对。 这篇文章扩展了他的回答。

    您本质上想要做的是使用 QueryExpression 的 PageInfo 属性。 这样您就可以限制结果,或者甚至更好地获取超过 5000 行(默认限制)。 PageInfo 用作分页指示器。一个页面有多少行,有多少页,最重要的是,PagingCookie 用于递归读取更多数据(超过 5k 行) https://msdn.microsoft.com/en-us/library/mt269606.aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-10
      • 2010-12-07
      • 1970-01-01
      • 1970-01-01
      • 2011-01-28
      • 2017-04-09
      • 2021-09-30
      • 1970-01-01
      相关资源
      最近更新 更多