[英]Azure MobileService Client - ToListAsync not retrieving all data
我正在使用Azure
提供的MobileServiceClient
類從Azure SQL database
獲取數據。 看來當我使用ToListAsync()
函數時, ToListAsync()
數據庫中獲取前60行左右。 有沒有解決的辦法?
List<riskregister_hazard_template> categories;
categories = await riskTable.Where(r => r.level_1 == _level1)
.Where(r => r.level_2 == _level2).ToListAsync();
請閱讀以下摘錄:
默認情況下,表控制器中的讀取操作將最多返回50個項目。 如果我們的表存儲空間更多,則客戶端需要通過將ToListAsync或ToEnumerableAsync方法的結果強制轉換為IQueryResultEnumerable接口來請求更多請求。 下面的代碼顯示了如何遍歷表中的所有元素。
public async Task<double> CalculateAverageAge()
{
var client = new MobileServiceClient(AppUrl, AppKey);
var table = client.GetTable<Person>();
var sum = 0.0;
var count = 0;
var items = await table.Take(10).ToEnumerableAsync();
while (items != null && items.Count() != 0)
{
count += items.Count();
sum += Enumerable.Sum(items, i => i.Age);
var queryResult = items as IQueryResultEnumerable<Person>;
if (queryResult != null && queryResult.NextLink != null)
{
items = await table.ReadAsync<Person>(queryResult.NextLink);
}
else
{
items = null;
}
}
return sum / count;
}
來源: https : //azure.microsoft.com/en-us/blog/better-support-for-paging-with-table-storage-in-azure-mobile-services-net-backend/
希望這可以幫助。
問候,
阿爾貝托·莫里洛(Alberto Morillo)
SQLCoffee.com
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.