5.00 / 1 oy

LINQ birden fazla sıralama (order by) kriteri nasıl eklenir?

Örneğin kişiler tablosundaki bilgileri önce doğum tarihine göre, doğum tarihi aynı olan kişiler için de ikinci sıralama kriteri olarak adlarına göre sıralamak istiyorum.

Tek bir sıralama kriteri için aşağıdaki C# LINQ kodunu yazıyorum sorun yok ama ikinci sıralama kriterini nasıl ekleyebilirim?

var kisiler = _veritabani.Kisiler.OrderBy(c => c.DogumYili)

 

bora34

22.07.2019 01:12

Bu soru 1 kez yanıtlandı.

  • 24 Temmuz 2019 00:29
    28

    Aşağıdaki gibi LINQ komutunuza ThenBy kullanarak birden çok sıralama kriteri ekleyebilirsiniz.

    var kisiler = _veritabani.Kisiler.OrderBy(c => c.DogumYili).ThenBy(n => n.Adi)

    lambda kullanmak istemezseniz alternatif olarak aşağıdaki kod yapısını da kullanabilirsiniz:

    var kisiler = from row in _veritabani.Kisiler 
                 orderby row.DogumYili descending, row.Adi
                 select row;

    ascending varsayılan olduğu için yazılmaz, descending de artan sırada orada olmayacak ama yerini görmüş olun diye ekledim.

Bu soruya sadece kayıtlı kullanıcılar yanıt yazabilirler. Yanıt yazmak için lütfen giriş yapınız.

Reitix
LINQ birden fazla sıralama (order by) kriteri nasıl eklenir?

İnternet sitemizdeki deneyiminizi iyileştirmek için çerezler kullanıyoruz. Bu siteye giriş yaparak çerez kullanımını kabul etmiş sayılıyorsunuz. Daha fazla bilgi.