Ո՞րն է տարբերությունը առաջինի և FirstOrDefault-ի միջև Linq-ում:
Ո՞րն է տարբերությունը առաջինի և FirstOrDefault-ի միջև Linq-ում:
Anonim

Մայոր տարբերությունը First-ի և FirstOrDefault-ի միջև դա է Առաջին () բացառություն կանի, եթե ներկայացված չափանիշների համար արդյունքների տվյալներ չկան, մինչդեռ FirstOrDefault () վերադարձնում է լռելյայն արժեք (null), եթե արդյունքի տվյալներ չկան:

Բացի դրանից, ո՞րն է տարբերությունը առաջին () և FirstOrDefault () Select մեթոդների միջև Linq-ում:

Առաջին() -Առնվազն մեկ արդյունք կա, բացառություն է գցվում, եթե արդյունք չվերադարձվի։ FirstOrDefault () - Նույնը, ինչ Առաջին() , բայց չնետվի որևէ բացառություն կամ չվերադարձնի, երբ արդյունք չկա: Միայնակ () պնդում է, որ գոյություն ունի մեկ և միայն մեկ տարր մեջ հաջորդականությունը. Առաջին() պարզապես տալիս է ձեզ առաջին մեկ.

Հետագայում հարց է առաջանում, թե ինչ տարբերություն առաջինի և սինգլի միջև Linq-ում: Առաջին () կշպրտի, եթե չկարողանա գտնել առաջին համապատասխան արժեք, Միայնակ ()-ը կշպրտի, եթե այն չկարողանա գտնել արժեքը և եթե մուտքագրման հաջորդականության մեջ կան մեկից ավելի համապատասխան տարր: Հետևաբար, նրանք ունեն քույր գործառույթներ, որոնք կոչվում են FirstOrDefault () և SingleOrDefault():

Բացի այդ, ի՞նչ է օգտագործում FirstOrDefault-ը Linq-ում:

FirstOrDefault () Վերադարձնում է հաջորդականության առաջին տարրը կամ կանխադրված արժեքը, եթե որևէ տարր չի գտնվել: Այն սխալ է թույլ տալիս միայն այն դեպքում, եթե աղբյուրը զրոյական է: դու պետք է օգտագործել այն, եթե սպասվում է մեկից ավելի տարր, և դուք ցանկանում եք միայն առաջին տարրը: Նաև լավ է, եթե արդյունքը դատարկ է:

Ո՞րն է տարբերությունը միայնակ () և SingleOrDefault () մեթոդների միջև:

Այն SingleOrDefault() մեթոդը անում է նույն բանը, ինչ Single() մեթոդ . Միակ տարբերությունը այն է, որ այն վերադարձնում է հավաքածուի տվյալների տեսակի լռելյայն արժեքը, եթե հավաքածուն դատարկ է, ներառում է մեկից ավելի տարր կամ չի գտնում որևէ տարր կամ մեկից ավելի տարր նշված պայմանի համար:

Խորհուրդ ենք տալիս: