where in query
sorgu söz diziminde where kullanmayı öğrenirsin.
Sorguda where
Sorgu söz diziminde where, elemanları süzer. from'dan sonra, select'ten önce yazılır. Koşul, aralık değişkenini kullanarak bool döndüren bir ifade olmalıdır: from n in numbers where n > 3 select n.
Birden çok koşul && ve || ile birleştirilebilir. Süzme sonrası yalnızca koşulu sağlayan öğeler sorguda ilerler. where istediğin kadar yazılabilir; aralarına başka yan tümceler de girebilir.
Koşul ifadesi
where, aralık değişkeni üzerinde bool döndüren herhangi bir ifade alır. Karşılaştırma (n > 3), metod çağrısı (n.IsValid()) veya bunların kombinasyonu olabilir.
İki koşulu && ile birleştirirsen her ikisini de sağlayan öğeler kalır. || ile en az birini sağlayanlar. Parantezle öncelik belirleyebilirsin: where (n > 0 && n < 10) || n == 100.
Uygulama Çift sayıları where ile süz
numbers dizisinde where n % 2 == 0 ile çift sayıları süz. Sonucu foreach ile gez ve her öğeyi Console.WriteLine(n) ile yazdır.
Örnek çözümü göster
from n in numbers where n % 2 == 0 select n; ile sorguyu yaz. Sonra foreach (var n in query) { Console.WriteLine(n); } ile yazdır.
Örnek çözüm:
using System;
using System.Linq;
class Program
{
static void Main()
{
int[] numbers = { 1, 2, 3, 4, 5, 6 };
var query = from n in numbers
where n % 2 == 0
select n;
foreach (var n in query)
{
Console.WriteLine(n);
}
}
}
Kendini test et
-
where yan tümcesini tamamla
var query = from n in numbers ____ n > 3 select n;Cevabı göster
var query = from n in numbers where n > 3 select n; -
Hangisi geçerli bir where kullanımıdır?
from n in numbers where n > 0 select n- from n in numbers where n > 0
- where n > 0 from n in numbers select n
- from n in numbers where n > 0 select n
- from n in numbers select n where n > 0
Cevabı göster
from n in numbers where n > 0 select n — Doğru. where, from'dan sonra ve select'ten önce gelir.
-
Yan tümce sırasını eşle
- from
- Birinci (başlangıç)
- where
- Koşul (süzme)
- orderby
- Ara (sıralama)
- select
- Son (projeksiyon)