我正在使用Azure DocumentDB。我正在查看ExecuteNextAsync操作。我所看到的是ExecuteNextAsync不返回任何重新排列。我正在使用我在线找到的示例,并且不会产生任何结果。如果我在初始查询上调用枚举操作,则返回结果。是否有示例显示使用ExecuteNextAsync的完整配置?
更新 为了更明确,我实际上没有得到任何结果。该调用似乎只是运行并且没有生成错误。
使用集合定义,我发现当我将集合大小设置为250GB时,就会发生这种情况。我测试了10GB的集合,它确实工作了一段时间。最新测试显示该操作现在再次悬挂。
我生成了两个集合。第一个集合似乎正常工作。第二个似乎在此操作失败。
答案 0 :(得分:1)
对ExecuteNextAsync
的单独调用可能会返回0结果,但是当您通过调用查询来完成查询直到HasMoreResults
为假时,您将始终获得完整的结果。
几乎总是,对ExecuteNextAsync
的单次调用将返回结果,但由于两个原因,您可能会得到0结果:
如果您希望查询确定性地返回结果,则必须使用SELECT TOP
与使用延续令牌/ ExecuteNextAsync
作为分页机制。您还可以通过将FeedOptions.MaxDegreeOfParallelism
更改为-1。