Kwerenda łączenia LINQ (z zerową wartością między tabelą)
Mam 3 stoliki.
Na przykładKlient, Firma iAdres.
Klient ma ref do firmy.
Firma posiada 2 niezawierające numery referencyjne do adresu (fakturowanie i wysyłka), więc w niektórych przypadkach adres może nie istnieć.
Potrzebuję wykonać zapytanie o połączenie, ale w przypadku, gdyCompany.BillingAddress
lubCompany.ShippingAddress
równa sięnull
, Nie dostaję wszystkich danych).
Spróbowałem tego (ale to błędne zapytanie):
var res = (from client in context.Clients
join clientCompany in context.Companies
on client.ClientCompanyId equals clientCompany.Id
into clientCompanyJoin
from company in clientCompanyJoin
join addressBilling in context.Addresses
on company.BillingAddressId equals addressBilling.Id
join addressShipping in context.Addresses
on company.ShippingAddressId equals addressShipping.Id
select new
{
Client = client,
Company = company,
BillingAddress = ???????
ShippingAddress = ???????
}
);
Czy mógłbyś mi pomóc zrobić zapytanie o połączenie lub wyjaśnić, jak to zrobić?
Dzięki.