【发布时间】:2018-07-04 00:34:22
【问题描述】:
我正在尝试使用 PageSize 和 PageNumber 从 cosmosDB 返回项目。我知道我们可以在MaxItemCount 中设置页面大小,但是我们如何在这个函数中输入页码呢?
这是我目前得到的:
public async Task<IEnumerable<T>> RunSQLQueryAsync(string queryString, int pageSize, int pageNumber)
{
var feedOptions = new FeedOptions { MaxItemCount = pageSize, EnableCrossPartitionQuery = true };
IQueryable<T> filter = _client.CreateDocumentQuery<T>(_collectionUri, queryString, feedOptions);
IDocumentQuery<T> query = filter.AsDocumentQuery();
var currentPageNumber = 0;
var documentNumber = 0;
List<T> results = new List<T>();
while (query.HasMoreResults)
{
foreach (T t in await query.ExecuteNextAsync())
{
results.Add(t);
documentNumber++;
}
currentPageNumber++;
return results;
}
return null;
}
【问题讨论】:
标签: azure asp.net-core pagination azure-cosmosdb paging