2024年7月24日 星期三

linq left join 跟 inner join


隨手記錄一下,開發時候使用Left/Inner Join的方式,主要的差異在標色處。 

(1)LeftJoin,參數:int MasterTableID

from master in db.MasterTable

where MasterTable.MasterTableID == MasterTableID

join detail in db.DetailTable on MasterTable.MasterTableID equals Detail.MasterTableID into joinGroup

from Detail in joinGroup.DefaultIfEmpty()

select new {  master, detail };


(2)InnerJoin,參數: int MasterTableID

var result = from master in db.MasterTable

where MasterTable.MasterTableID == MasterTableID

join detail in db.DetailTable on MasterTable.MasterTableID equals Detail.MasterTableID 

select new {  master, detail };