Yazılım.
CevapSitesi.com Beta!
Çözüm Noktası
Facebook, Twitter, Google+ veya e-posta ile paylaşın.
| Sorular | Makaleler | Üyeler | Etiketler  | İletişim
Soru sormak ya da cevap vermek için;
giriş yapın veya üye olun.

Sosyal medya hesaplarınızla da giriş yapabilirsiniz.
0

LINQ - Temel İşlemler - Sıralama (Ordering)

Bir sorgudan çoğu kez elemanları belli bir sırada vermesi istenir. Bunun için orderby cümleciği kullanılır. orderby, aksi belirtilmedikçe sıralamayı küçükten büyüğe doğru yani artan şekilde verir.

Kullanılan sınıfın;
public class Ogrenci
{
public string Adi { get; set; }
public string Soyadi { get; set; }
public int No { get; set; }
public List<int> Yazililar;
}
olduğunu, kullanılan listenin de;
List<Ogrenci> ogrenciler = new List<Ogrenci>
{
new Ogrenci {Adi="Kenan", Soyadi="Oran", No=111, Yazililar = new List<int> {97, 72, 60}},
new Ogrenci {Adi="Erhan", Soyadi="Erkanlı", No=112, Yazililar = new List<int> {75, 84, 39}},
new Ogrenci {Adi="Tekin", Soyadi="Uğurlu", No=113, Yazililar = new List<int> {99, 89, 95}},
new Ogrenci {Adi="Mehmet", Soyadi="Emre", No=114, Yazililar = new List<int> {72, 81, 84}},
new Ogrenci {Adi="Ercan", Soyadi="Orak", No=115, Yazililar = new List<int> {97, 89, 82}},
};
olduğunu varsayarak aşağıdaki örneği inceleyin.
var query = from ogrenci in ogrenciler
where ogr.Yazililar[0] >= 55
orderby ogr.Yazililar[0]
select ogr;


/*
// LINQ Yöntem Sözdizimi ile sorgu :
var query = ogrenciler.Where(ogr => ogr.Yazililar[0] >= 55)
.OrderBy(ogr => ogr.Yazililar[0]);
*/
Bu örnek, 1. yazılı sınav notu 55 ve daha büyük olan öğrencileri 1. sınav notlarına göre artan sırada (küçükten büyüğe) seçer.

Eğer tersine bir sıralama isteniyorsa descending ifadesi cümleciğin sonuna eklenir.
var query = from ogrenci in ogrenciler
where ogr.Yazililar[0] >= 55
orderby ogr.Yazililar[0] descending
select ogr;


/*
// LINQ Yöntem Sözdizimi ile sorgu :
var query = ogrenciler.Where(ogr => ogr.Yazililar[0] >= 55)
.OrderByDescending(ogr => ogr.Yazililar[0]);
*/
Bu örnek ise aynı listeden, 1. yazılı sınav notu 55 ve daha büyük olan öğrencileri 1. sınav notlarına göre azalan sırada (büyükten küçüğe) seçer.



Diğer LINQ Makaleleri:


Yazan: 09.04.16 20:37
canora
101,384p 4ü