Vad är skillnaden mellan singel och SingleOrDefault i Linq?
Vad är skillnaden mellan singel och SingleOrDefault i Linq?

Video: Vad är skillnaden mellan singel och SingleOrDefault i Linq?

Video: Vad är skillnaden mellan singel och SingleOrDefault i Linq?
Video: Окрашивание волос Блонд Пошагово дома | Холодный Блонд самой себе | Уроки окрашивания волос 2024, Maj
Anonim

Enda () - Det finns exakt 1 resultat, ett undantag kastas om inget resultat returneras eller mer än ett resultat. SingleOrDefault () - Samma som Enda (), men den kan hantera nullvärdet. First() - Det finns minst ett resultat, ett undantag kastas om inget resultat returneras.

På det här sättet, vad är skillnaderna mellan metoderna single () och SingleOrDefault ()?

De SingleOrDefault() metod gör samma sak som Single() metod . Det enda skillnad är att det returnerar standardvärdet för datatypen för en samling om en samling är tom, innehåller mer än ett element eller hittar inget element eller mer än ett element för det angivna villkoret.

Dessutom, vad är singel eller standard i Linq? Semantisk skillnad: FirstOrDefault returnerar ett första objekt med potentiellt flera (eller standard om ingen finns). SingleOrDefault antar att det finns en enda varan och returnerar den (eller standard om ingen finns). Flera föremål är ett avtalsbrott, ett undantag kastas.

Följaktligen, vad är skillnaden mellan första och singel i Linq?

Först () kommer att kasta om den inte kan hitta först matchande värde, Enda () kommer att kasta om den inte kan hitta värdet och om det finns mer än ett matchande element i inmatningssekvensen. Därför har de systerfunktioner som kallas FirstOrDefault () och SingleOrDefault().

Vad är skillnaden mellan FirstOrDefault () och SingleOrDefault () extensionsmetoden i Linq?

Introduktion. De SingleOrDefault() metod returnerar ett enstaka specifikt element i en sekvens eller ett standardvärde om det elementet inte hittas i sekvens. De FirstOrDefault() metod returnerar ett första specifikt element i en sekvens eller standardvärde om det elementet inte hittas i sekvens.

Rekommenderad: