List Kulupler = KulupleriGetir();
var UyeOlunanKulupler = Ogrenciler.SelectMany(Ogrenci => Kulupler.Where(Kulup => Kulup.KayitNo == Ogrenci.Kulup),
(Ogrenci, Kulup) =>
new {
Ogrenci.Adi,
KulupAdi = Kulup.Adi
}
);
Console.WriteLine("Öğrenciler ve kulupleri :");
foreach (var Satir in UyeOlunanKulupler)
{
Console.WriteLine("{0}, {1} kulübüne üye.", Satir.Adi, Satir.KulupAdi);
}
Console.ReadLine();
SelectMany yönteminin aldığı 2 parametreden birincisi, SelectMany uygulanan veri kaynağının (örneğimizde Ogrenciler ) hangi veri kaynağı ile hangi ortak alan üzerinden birleştirileceğini (örneğimizide Kulup.KayitNo ve Ogrenci.Kulup ), ikincisi nelerin seçileceğini (örneğimizde öğrenci adı ve kulüp adı) belirler.
Bu örnekte new { Ogrenci.Adi, KulupAdi = Kulup.Adi } ifadesinde birinci özelliğin adı belirtilmemiştir. Yani isimsiz tip new { Adi = Ogrenci.Adi, KulupAdi = Kulup.Adi } şeklinde yazılmamıştır. Böyle bir durumda özellik adı olarak seçilen özelliğin adı (örneğimizde Ogrenci.Adi bölümündeki Adi) kullanılacaktır.
Hiç yorum yok:
Yorum Gönder