[英]Querying from azure db using linq takes a lot of time
我正在使用Azure db,並且我的表有超過120000條記錄。 應用10條記錄分頁時,我正在將數據讀取到IQueryable中,但是要提取10條記錄僅需2分鍾左右。 該查詢沒有聯接,只有2個過濾器。 使用Azure搜索時,我可以在3秒內獲得所有記錄。 請提出建議,建議誰減少我的Linq搜索,因為天藍色搜索的成本很高。
根據問題注釋中的查詢,您似乎正在將整個數據庫表讀取到應用程序的內存中。 數據可能會從數據中心的一側傳輸到另一側,從而導致性能問題。
unitofwork.Repository<EntityName().GetQueriable().ToList().Skip(1).Take(10);
沒有看到其余的代碼,我只是猜測您的LINQ查詢應該是這樣的:
unitofwork.Repository<EntityName().GetQueriable().Skip(1).Take(10).ToList();
跳過和獲取應在db服務器上執行,而.ToList()最后將實現實體。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.