如何在LINQ中进行外连接?

Che*_*hev 3 c# sql linq linq-to-entities entity-framework

我已经定义了两个映射到我的数据库中的两个表的实体.在SQL中我会像这样进行连接:

select *
from tableA a
left outer join tableB b on b.ID = a.ID
where some condition
Run Code Online (Sandbox Code Playgroud)

我如何使用LINQ查询执行此操作?

Dav*_*haw 5

使用Labda表达式您使用群组加入

例:

var query =
  People
  .GroupJoin(
    Pets,
    person => person.PersonId,
    pet => per.Owner,
    (person, petCollection) =>
       new
       {
          Person = person,
          Pets = petCollection.Select(pet => pet.Name),
       });
Run Code Online (Sandbox Code Playgroud)