Etrafımda arama yaptım .First
ve ne zaman kullanmak istediğiniz .FirstOrDefault
ve LINQ ile ne zaman kullanmak istediğiniz konusunda net bir cevap bulamadım .
Ne zaman kullanmak istersiniz
.First
? Yalnızca sonuç döndürülmediğinde istisnayı yakalamak istediğinizde?var result = List.Where(x => x == "foo").First();
Ne zaman kullanmak istersiniz
.FirstOrDefault
? Sonuç yoksa her zaman varsayılan türü ne zaman istiyorsunuz?var result = List.Where(x => x == "foo").FirstOrDefault();
Ve bu konuda Take'ye ne dersin?
var result = List.Where(x => x == "foo").Take(1);
Single
ve SingleOrDefault
. İnsanlar First
gerçekten kastettiklerinde kullandıklarından nefret ediyorum Single
; )
.FirstOrDefault()
size her zaman daha anlamlı bir istisna atma fırsatı verdiğini düşünün . Bir sekans istisnası atılırsa ve .First()
bir yöntemde birden fazla kural varsa , hangi ifadenin sorun olduğunu anlamak zor olabilir.
.First
ve.FirstOrDefault
her ikisi devar result = List.Where(x => x == "foo").First();
var result = List.First(x => x == "foo");