3
我已經定義了兩個實體映射到我的數據庫中的兩個表。在SQL中,我會做這樣的連接:如何在LINQ中進行外連接?
select *
from tableA a
left outer join tableB b on b.ID = a.ID
where some condition
我該如何使用LINQ查詢來做到這一點?
我已經定義了兩個實體映射到我的數據庫中的兩個表。在SQL中,我會做這樣的連接:如何在LINQ中進行外連接?
select *
from tableA a
left outer join tableB b on b.ID = a.ID
where some condition
我該如何使用LINQ查詢來做到這一點?
請參閱:How to: Perform Left Outer Joins (C# Programming Guide)在MSDN上。
例如:
var query = from person in people
join pet in pets on person equals pet.Owner into gj
from subpet in gj.DefaultIfEmpty()
select new { person.FirstName, PetName = (subpet == null ? String.Empty : subpet.Name) };
使用Labda表達式您使用GroupJoin
例子:
var query =
People
.GroupJoin(
Pets,
person => person.PersonId,
pet => per.Owner,
(person, petCollection) =>
new
{
Person = person,
Pets = petCollection.Select(pet => pet.Name),
});
謝謝:) +1;將在13分鐘內接受。 – Chev
我認爲這是一個:http://msdn.microsoft.com/en-us/library/bb397895.aspx(左外部聯接) – DaveShaw
是,外部聯接更新 –