Hiyerarşik verileri düzleştirmek için SQL'i böyle kullanıyorum. Sadece bir görünüm oluşturup EF diyagramına atıyorum. Ancak bu, "SQL Management Studio'yu LinqPad ile değiştir" zihniyetine uymuyor. Bunları Linq (ve C#) 'de nasıl kodlarım? (Tablo 1 - Varlıklar/Varlık Çerçevesi 4)Linq Akrobasi: Hiyerarşik veri modelleri nasıl düzleştirilir?
Tablo A, ürünleri ve B tablosunu birçok kategoride bulundurmaktadır. Ben görünümünde tek alan olarak bir kategori numarası seçmek istiyor:
select A.*, B1.category as color, B2.category as size, B3.category as shape
from A left join B B1 on A.key = B1.key and B1.type = 1 -- Selects one B row
left join B B2 on A.key = B2.key and B2.type = 2
left join B B3 on A.key = B3.key and B3.type = 3
iyisi, SQL-aramak ve Linq eşdeğer görebileceğiniz bir Linq desen yemek kitabı var mı? C# 'da 101 Linq examples'u daha önce görmüştüm.
Minor point - LINQ'da kendi başına bir dış birleşim yoktur, ancak Entity Framework'de LINQ kullanılarak, dış birleşimlere yol açan birçok sorgu biçimi vardır - örneğin Var insanlar = db.Person.In Idde on eklendiğinde (p => p.Adres) null olamaz - EF sizin için sol dış birleşim olarak yorumluyor. –