這可能是一個真正的元素問題,但是在編寫跨越三個級別(或更多)的查詢時包含多個子實體的最好方法是什麼?實體框架linq查詢包含()多個子實體
即我有4個表:Company
,Employee
,Employee_Car
和Employee_Country
公司具有1:與僱員米關係。
員工與Employee_Car和Employee_Country都有1:m的關係。
如果我想寫的是所有4個表返回數據的查詢,我目前正在寫:
Company company = context.Companies
.Include("Employee.Employee_Car")
.Include("Employee.Employee_Country")
.FirstOrDefault(c => c.Id == companyID);
必須有一個更優雅的方式!這是長篇大論,併產生可怕的SQL
我使用EF4 VS 2010中
這太棒了。 – 2013-03-20 18:32:17
但我想用它這個像:'//內公共靜態類擴展 公共靜態的IQueryable CompleteCompanies(這DbSet 表){ 返回表 .INCLUDE(「Employee.Employee_Car」) .INCLUDE(」 Employee.Employee_Country「); } // code將... Company company = context.Companies.CompleteCompanies()。FirstOrDefault(c => c.Id == companyID); //下一個高級方法相同 –
Hamid
2016-03-28 08:28:20
Bullsye Nix。擴展應該是...的第一個端口,以及擴展預定義的功能。 – ComeIn 2016-04-23 10:29:21