Bir önceki yazımdaki isnull fonksiyonu adlı konuyu araştırmama sebep olan sql kodunun içinde left outerda olması bu konuyuda araştırmama itti beni.Konuyla ilgili Oğuz yağmur'un blogunda anlatımı uygulayarak yaptım orjinal link : Buradadur
Yakın zamanda da yaşadığım bir sorun olan site kapalılığı nedeniyle ileride olası oğuz yağmurun sayfa kapatma ihtimaline karşın yazıyı da burada paylaşıyorum.
Linq kodu budur
from kisi in Kisisjoin tlf in Telefonson kisi.ID equals tlf.KisiID into datafrom x in data.DefaultIfEmpty()select new{
Ad = kisi.Ad,
Tlf = x.Numara}
Bu kodun sql çıktısı ise şu şekildedir
SELECT [t0].[Ad], [t1].[Numara] AS [Tlf]
FROM [Kisi] AS [t0]
LEFT OUTER JOIN [Telefon] AS [t1] ON [t0].[ID] = [t1].[KisiID]
Burada normalde telefonu olmayanları getirmesi için yazıyoruz. into data from x in data.DefaultIfEmpty() kodu olmasa telefonu olmayan kişileri listelemeyecekti.
Hiç yorum yok:
Yorum Gönder