LINQ Lambda Left join with an Inner join

前端 未结 3 389
予麋鹿
予麋鹿 2021-01-21 12:13

I have written a LINQ lambda query which so far which returns all staff which do not have an associated training row which works fine. I now need to amend my where clause to use

3条回答
  •  深忆病人
    2021-01-21 12:18

    You can do the following (I've not used method chaining syntax to make it more readable IMO):

    var query = from s in db.staff
                join m in db.manager on s.manager_id equals m.id
                join t in db.training on s.id equals t.staff_id into tr
                from training in tr.DefaultIfEmpty()
                select new
                {
                    Staff = s,
                    Training = training
                };
    

提交回复
热议问题