我有以下LINQ返回零如果沒有任何地址(內部加入)。我如何使這個外部加入,然後只有Take(1)
?LINQ加入(左外)與拿(1)
var results = query.Join(
DB.tblAddresses.Where(t => t.AddressTypeID == 'm' || t.AddressTypeID == 'b').OrderByDescending(x => x.AddressTypeID),
p => p.PersonID,
a => a.PersonID,
(p, a) =>
new
{
p.PersonID,
p.LastName,
p.FirstName,
p.MiddleName,
p.SSN,
p.BirthDate,
p.DeathDate,
AddressLine1 = a.AddressLine1 ?? string.Empty
});
return results.CopyLinqToDataTable();
這個我試過像這樣 - >'DB.tblAddresses.Where(T => t.AddressTypeID == 'm'|| t.AddressTypeID =='b')。OrderByDescending(x => x.AddressTypeID).DefaultIfEmpty(),'無效。謝謝你的想法。 – 2010-09-22 20:10:25
澄清,如果地址行丟失,它仍然不會返回。 – 2010-09-22 20:10:52