【发布时间】:2021-07-07 20:40:56
【问题描述】:
我想了解 odata 和 fetchxml 之间的区别,这与 MS Dynamics 中的分页有关,我对堆栈非常陌生,想了解为什么有两个对象模型本质上执行相同的任务?
问题陈述如下,我们希望我们的产品能够正确地对从 Dynamics 获得的答案进行分页,目前我们每页只能得到 5000 个答案,所以如果我们应该每页得到 6000 个答案,我们该怎么做关于它:
我了解 odata 的局限性,它只能检索记录大小 = 5000。要克服这个问题或查看下一组结果,我必须使用 @odata.nextLink 属性的值和新的 GET 请求返回下一页数据。
对于 fetchxml,同样可以选择使用分页 cookie。我的初步分析正确吗?
但我还是不明白为什么有 2 个对象模型?
【问题讨论】:
-
分页意味着检索页面中的数据,而不是试图检索单个“页面”中的所有项目。这不是 OData 限制。您以错误的方式使用分页,或者更确切地说,您试图避免分页。不要那样做。
-
事实上,如果您必须检索 6000 个项目,那么您有一个导出作业,而不是 API 查询。使用 FetchXML、OData 还是 GraphQL 都没有关系。 API 查询是镊子,但您正试图导出大量数据。为此有不同的工具。
-
@sgan 有任何后续问题吗?
标签: pagination dynamics-crm odata microsoft-dynamics fetchxml