Merhaba arkadaşlar. Bu makale lambda ifadelerinden bazı methodları ve kullanımlarını anlatacağım.
Öncelikle basit bir class ve o class'tan oluşacak bir liste yapıyorum.
OrderBy: Herhangi bir değişkene göre küçükten büyüğe sıralamaya yarar
Örn:
var siraliste = a.OrderBy(o=>o.sira).ToList();
Çıktısı:
Değişken: C Sıra: 1
Değişken: E Sıra: 2
Değişken: D Sıra: 3
Değişken: B Sıra: 4
Değişken: A Sıra: 5
OrderByDescending : OrderBy methodunun tam tersi. Büyükten küçüğe sıralamaya yarar.
Çıktısı:
Değişken: A Sıra: 5
Değişken: B Sıra: 4
Değişken: D Sıra: 3
Değişken: E Sıra: 2
Değişken: C Sıra: 1
ThenBy: Önceden sıralanmış bir listeyi tekrar sıralamaya yarar.
var siraliste = a.OrderBy(o=>o.aktif).ThenBy(t=>f.sira).ToList();
Çıktısı:
Değişken: E Sıra: 2 Durum: false
Değişken: D Sıra: 3 Durum: false
Değişken: B Sıra: 4 Durum: false
Değişken: C Sıra: 1 Durum: true
Değişken: A Sıra: 5 Durum: true
Önce aktiflik durumuna göre küçükten büyüğe sıraladı. Sonra kendi içlerinde sıra değişkenine göre sıraladı.
ThenByDescending: ThenBy Methodunun tam tersi şeklinde çalışır.
Değişken: A Sıra: 5 Durum: true
Değişken: C Sıra: 1 Durum: true
Değişken: B Sıra: 4 Durum: false
Değişken: D Sıra: 3 Durum: false
Değişken: E Sıra: 2 Durum: false
Take: Var olan listeden içine aldığı değer kadarını tutulmasını sağlar
var yeni_liste = a.Take(2).ToList();
Çıktı
Değişken: A Sıra: 5 Durum: true
Değişken: B Sıra: 4 Durum: false
var yeni_liste = a.Skip(2).ToList();
Çıktı
Değişken: C Sıra: 1 Durum: true
Değişken: D Sıra: 3 Durum: false
Çıktı
Değişken: B Sıra: 4 Durum: false