我有一個LINQ to Entity查詢運行速度非常慢。該查詢在特定數據庫上執行一些計算邏輯,然後將結果傳遞給ViewModel。查詢非常快,直到我在查詢底部添加了4個select語句。我需要選擇語句才能返回結果響應的集合。爲什麼查詢運行速度如此緩慢?Linq to Entity Query非常慢
var data = from SurveyResponseModel in db.SurveyResponseModels
group SurveyResponseModel by SurveyResponseModel.MemberId into resultCount
select new ResultsViewModel()
{
YesBarriersOthersResult = resultCount.Select(r => r.YesBarriersOthers),
NoBarriersOthersResult = resultCount.Select(r => r.NoBarriersOthers),
TotalResponsesResult = db.SurveyResponseModels.Count(),
};
return View(data);
我會檢查實際的SQL命令。也許一些查詢執行多次,或EF創建了一些瘋狂的子查詢? –
這是個好建議。我在開發中使用SQLCOmpact版本,但切換到SQL Server 2008R2後現在似乎更快了。 – user547794