Herkese merhaba,
Bugün sizlerle .net core üzerinde filtre olarak gönderdiğimiz modelin(multi parameter) linq expression kullanarak verinin alınmasını işleyeceğiz.
Arayüzden dropdownlardan seçilen değerleri tek model ile aldığımızda null olan değerleri çıkarıp filtrelenen değerleri göstereceğiz.
Arayüzden filtrelediğiniz değerleri tek model ile aldığımızı düşünerek devam ediyoruz.
1) Örnek modelimiz aşağıdaki gibidir.
public class Ogrenci
{
public int Id { get; set; }
public string Ad { get; set; }
public string Soyad { get; set; }
public string Bolum { get; set; }
public string Adres { get; set; }
}
2) Filtrelenen değerleri geriye liste olarak dönecek methodumuz.
public List OgrenciGetir (Ogrenci filter)
{
}
3) Modelimize filtrelediğimiz değerleri gönderir ve linq expression ile alırız.
public List OgrenciGetir(Ogrenci filter)
{
//AsQyeryable olmasına dikkat edin.
var result = _context.Ogrenci.AsQueryable();
if (!string.IsNullOrEmpty(filter.Bolum))
{
result = result.Where(x => x.Bolum == filter.Bolum);
}
if (!string.IsNullOrEmpty(filter.Adres))
{
result = result.Where(x => x.Adres == filter.Adres);
}
var sonuc = result.ToList();
return sonuc;
}
Sonuç olarak model olarak gönderdiğimiz filtre değerlerini null kontrolünden geçirerek, elde ettiğimiz değerlerimizi liste şeklinde gönderdik.
Bir sonraki yazıda görüşmek üzere
