Mi a különbség a single és a SingleOrDefault között a Linq-ben?
Mi a különbség a single és a SingleOrDefault között a Linq-ben?

Videó: Mi a különbség a single és a SingleOrDefault között a Linq-ben?

Videó: Mi a különbség a single és a SingleOrDefault között a Linq-ben?
Videó: (#40) Single() vs SingleOrDefault() | | LINQ tutorial for beginners 2024, Lehet
Anonim

Egyetlen () - Pontosan 1 eredmény van, kivételt dob, ha nem ad vissza eredményt, vagy egynél több eredményt ad vissza. SingleOrDefault () - Ugyanaz, mint a Egyetlen (), de képes kezelni a null értéket. First() - Legalább egy eredmény van, kivételt dob, ha nem ad vissza eredményt.

Ilyen módon mi a különbség a single () és a SingleOrDefault () metódusok között?

Az SingleOrDefault() metódus ugyanazt csinálja, mint Single() metódus . Az egyetlen különbség az, hogy visszaadja egy gyűjtemény adattípusának alapértelmezett értékét, ha a gyűjtemény üres, egynél több elemet tartalmaz, vagy nem talál elemet, vagy egynél több elemet talál a megadott feltételhez.

Továbbá, mi az egyetlen vagy az alapértelmezett a Linq-ben? Szemantikai különbség: A FirstOrDefault egy potenciálisan többszörös első elemet ad vissza (vagy alapértelmezett ha nem létezik). SingleOrDefault feltételezi, hogy van a egyetlen elemet és visszaküldi (vagy alapértelmezett ha nem létezik). Több tétel szerződésszegést jelent, kivételt dob.

Ennek megfelelően mi a különbség az első és a szingli között a Linq-ben?

Első () dobja, ha nem találja a első megfelelő érték, Egyetlen () dob, ha nem találja az értéket, és ha egynél több egyező elem van a beviteli sorozatban. Ezért vannak testvérfunkcióik, az úgynevezett FirstOrDefault () és SingleOrDefault().

Mi a különbség a FirstOrDefault () és a SingleOrDefault () kiterjesztési metódusok között a Linq-ben?

Bevezetés. Az SingleOrDefault() metódus egy sorozat vagy alapértelmezett érték egyetlen meghatározott elemét adja vissza, ha az elem nem található ban,-ben sorrend. Az FirstOrDefault() metódus egy sorozat vagy alapértelmezett érték első meghatározott elemét adja vissza, ha az elem nem található ban,-ben sorrend.

Ajánlott: