Linq First ve FirstOrDefault Farkı

  1. cemmm
    2
    466
    12/6/2018 1:25:00 PM

    Linq First ve FirstOrDefault metodu kullanımı için bir şey sormak istiyorum , aralarında ne fark var ?

    linq .net c# 9 gün önce 52 Görüntüleme

( 1 ) Cevap

  1. deniz
    2
    3007
    12/6/2018 2:26:00 PM

    İkiside seçmek istediğin bir veri yığını içinden ilkini getirir fakat ;

    Eğer seçilecek bir öğe , veri bulunamaz ise First() metodu System.InvalidOperationException hatası fırlatır , örneğin ;

    string[] takimlar=new string[]{"AntalyaSpor","AydınSpor","SamsunSpor"};
    
    var takim = takimlar.Where(s=> s==  "KonyaSpor").First();
    

    Yukardaki kodda istenen veri olmadığı için hata oluşacaktır.

    Ama bunun yerine FirstOrDefault() kullanılır ise , hata alınmaz , fakat geriye sonuç olarak null döner , ilerleyen satırlarda da null kontrolü yapılırsa bir sorun yaşanmaz , zaten FirstOrDefault() metodunun üzerine geldiğinde şu yazı çıkar ; "Bir sequence in ilk elemanını döner , eğer sequence de eleman yoksa default value döner"

    var takim = takimlar.Where(s=> s== "KonyaSpor").FirstOrDefault()
    

Cevabınız