使用 Web API Dynamics 365 执行 Fetch XML

Execution of Fetch XML using Web API Dynamics 365

我正在使用 this 方法在 Web API 中使用 Fetch XML 进行分页。

Web API 在我们使用简单提取时工作完美,如果有更多记录,它 returns 分页 cookie 和结果,但当我们使用复杂(我们有 link 实体时) 获取 XML 它 returns 分页 cookie 但为空例如:

<b><cookie pagenumber="2" pagingcookie="" istracking="False" /></b>

在这里你可以看到我们在 pagingcookie 中没有任何内容。
获取XML用于查询:

  <fetch mapping="logical" version="1.0" output-format="xml-platform" count="10" page="1" >
  <entity name="invoicedetail" >
  <attribute name="invoicedetailid" />
  <attribute name="uomid" />
  <attribute name="quantity" />
  <attribute name="manualdiscountamount" /> 
  <attribute name="priceperunit" />
  <attribute name="extendedamount" />
  <filter>
  <condition  entityname="invoice" attribute="customerid" operator="eq"    value="{5A8F8B46-2443-E511-80E3-3863BB351E10}" />
  </filter>
  <link-entity name="invoice" from="invoiceid" to="invoiceid" >
  <attribute name="invoiceid" />
  <attribute name="invoicenumber" />
  <attribute name="description" />
  <attribute name="totalamount" />
  <order attribute="ss_postingdate" descending="true" />
  </link-entity>
  </entity>
  </fetch>

如果我们删除 linked 实体,它会开始在响应中提供可以使用 @Microsoft.Dynamics.CRM.fetchxmlpagingcookie 获取的确切分页 cookie。

有没有什么办法可以在复杂场景下获取准确的分页cookie?

我以前在标准组织服务中见过这种情况。我建议只在没有分页 cookie 的情况下进行分页 - 这解决了我在组织服务中的问题。

例如<fetch mapping="logical" page="1" count="50">