3
我們正在使用實體框架來獲取一些數據。 LINQ查詢使用多個連接,如下面的代碼所示。我被要求將其更改爲SQL存儲過程,因爲它更快。我如何優化這個LINQ代碼,爲什麼它很慢?性能的LINQ VS SQL存儲過程
var brands = (from b in entity.tblBrands
join m in entity.tblMaterials on b.BrandID equals m.BrandID
join bm in entity.tblBranchMaterials on m.MaterialID equals bm.MaterialID
join br in entity.tblBranches on bm.BranchID equals br.BranchID
where br.BranchID == branch.branchId
select new Brand { brandId=b.BrandID, brandName=b.BrandName, SAPBrandId=b.SAPBrandID}).Distinct();
return brands.ToList();
誰告訴你存儲過程更快就是完全錯誤。 EF使用實際存在特殊存儲過程的參數化查詢。 – Aron 2013-03-06 07:53:15