我已经读过azure表存储查询最多可以提供1000个实体,我们必须使用continuation tokens来获取下一组实体.我只是想找一个简单的方法来做到这一点.我想要做的就是获取查询应该实际返回的所有实体,而不仅仅是1000个实体.我在这里阅读了@smarx帖子
,他提到了ExecuteAll方法,TableStorageDataServiceQuery但这似乎已经弃用了,因为我无法TableStorageDataServiceQuery在存储客户端库中找到它.
我还发现了这个msdn文档,介绍了如何处理连续令牌以获取所有实体.我只是想知道这是否是获取所有实体的最佳方式,我不需要任何分页.或者我可以使用任何ExecuteAll esque方法吗?
我的问题正是这个问题.但是,Azure Storage API已更改,我可以为此问题找到的所有答案都处理旧版本.如何处理当前API版本中返回超过1000个项目的查询?获取少于1000个项目的查询如下所示:
var query = new TableQuery<TermScoreEntity>()
.Where(TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, Name));
var table = _tableClient.GetTableReference("scores");
foreach (var termScoreEntity in table.ExecuteQuery(query))
result.Add(termScoreEntity.RowKey, termScoreEntity.Score);
Run Code Online (Sandbox Code Playgroud)