1

.AsTableServiceQuery()在 Azure 调用中使用来获取数据。

我也$top用来获取有限的数据,比如说 100

问题是,查询返回 100 个结果,它也会给出x-ms-continuation-NextPartitionKey令牌。同时.AsTableServiceQuery()不关心已经有 100 个结果并遵循继续令牌直到到达表的末尾。稍后会发生哪些大量数据和大量 HTTP 调用,超时。

有没有其他方法来处理带有$top过滤器的继续令牌

4

1 回答 1

3

延续标记是典型的混淆来源。每当您发出 $filter 或 $top 时,最好期待延续令牌。$top 是对表格进行分页的另一种方式。使用 Linq Take(n) 后跟 .AsTableQuery() 可以按照您期望的方式工作。Neil Mackenzie在他非常描述性的博客文章中给出了一个很好的示例。

CloudTableQuery<Song> cloudTableQuery =
(from entity in tableServiceContext.CreateQuery<Song>(“Songs”)
 select entity).Take(10).AsTableServiceQuery<Song>();
于 2012-08-13T00:31:55.830 回答