Quali sono i nomi dati a queste due espressioni LINQ
-
09-06-2019 - |
Domanda
Sto cercando di trovare i nomi corretti per questi 2 "tipi" di espressioni di codifica in LINQ in modo da poter fare riferimento ad essi correttamente.Voglio dire che il primo si chiama “Fluent Style”?
var selectVar = arrayVar.Select( (a,i) => new { Line = a });
var selectVar =
from s in arrayVar
select new { Line = s };
Soluzione
- Primo: chiamare un metodo di estensione.Questo stile di codifica è chiamato "interfaccia fluente" come hai menzionato.
- Viene chiamato il secondo metodo query integrata nel linguaggio
Altri suggerimenti
il primo non è nemmeno realmente linq, è un'espressione lambda, con un oggetto invariante di tipo creato.(a) => nuovo {bla = b}
La seconda è una query Linq che riempie una classe al volo che ha una proprietà Line.Non c'è nessun operatore hashrocket in questo, quindi questo è semplicemente il vecchio linq.
Il nome della seconda forma è "sintassi di comprensione della query", che il compilatore traduce nella prima forma.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow