我.AsTableServiceQuery()
在 Azure 调用中使用来获取数据。
我也$top
用来获取有限的数据,比如说 100
问题是,查询返回 100 个结果,它也会给出x-ms-continuation-NextPartitionKey
令牌。同时.AsTableServiceQuery()
不关心已经有 100 个结果并遵循继续令牌直到到达表的末尾。稍后会发生哪些大量数据和大量 HTTP 调用,超时。
有没有其他方法来处理带有$top
过滤器的继续令牌
我.AsTableServiceQuery()
在 Azure 调用中使用来获取数据。
我也$top
用来获取有限的数据,比如说 100
问题是,查询返回 100 个结果,它也会给出x-ms-continuation-NextPartitionKey
令牌。同时.AsTableServiceQuery()
不关心已经有 100 个结果并遵循继续令牌直到到达表的末尾。稍后会发生哪些大量数据和大量 HTTP 调用,超时。
有没有其他方法来处理带有$top
过滤器的继续令牌
延续标记是典型的混淆来源。每当您发出 $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>();