gpt4 book ai didi

c# - 使用 azure 表存储进行分页(升序)

转载 作者:行者123 更新时间:2023-12-02 06:50:08 27 4
gpt4 key购买 nike

这可以很好地以最多 1000 个项目的步长对数据进行分页:

var q1 =
(from book in table.CreateQuery<DynamicTableEntity>()
where book.PartitionKey == "TestPartition"
select book).AsTableQuery();

TableContinuationToken continuationToken = null;
do
{
var counter = 0;
var queryResult = q1.ExecuteSegmented(continuationToken);

foreach (var entity in queryResult)
{
Console.WriteLine(entity.Timestamp + " " + ++counter);
}

continuationToken = queryResult.ContinuationToken;
Console.WriteLine("####" + counter);
} while (continuationToken != null);

我真正想做的是首先从最旧的项目开始。换句话说,分页按实体.时间戳升序排列的项目。此查询不起作用:

    var q1 =
(from book in table.CreateQuery<DynamicTableEntity>()
where book.PartitionKey == "TestPartition"
select book).OrderBy(x => x.Timestamp).AsTableQuery();

TableContinuationToken continuationToken = null;
do
{
var counter = 0;
var queryResult = q1.ExecuteSegmented(continuationToken);

foreach (var entity in queryResult)
{
Console.WriteLine(entity.Timestamp + " " + ++counter);
}

continuationToken = queryResult.ContinuationToken;
Console.WriteLine("####" + counter);
} while (continuationToken != null);

因为不支持 OrderBy。我可以做些什么来实现这一目标吗?谢谢。

附注:

This可能有帮助。但是,它首先检索最新的项目,而我想先检索最旧的项目。

最佳答案

TableQuery 不支持 order by。您可以找到支持的运算符:Supported operators

关于c# - 使用 azure 表存储进行分页(升序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35534553/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com