Quais são os nomes dados a essas 2 expressões LINQ
-
09-06-2019 - |
Pergunta
Estou tentando encontrar os nomes corretos para esses 2 "tipos" de expressões de codificação no LINQ para poder me referir a eles corretamente.Quero dizer que o primeiro se chama “Estilo Fluente”?
var selectVar = arrayVar.Select( (a,i) => new { Line = a });
var selectVar =
from s in arrayVar
select new { Line = s };
Solução
- Primeiro – chamando um método de extensão.Este estilo de codificação é chamado de "interface fluente" como você mencionou.
- O segundo método é chamado consulta integrada de linguagem
Outras dicas
o primeiro nem é realmente linq, é uma expressão lambda, com um objeto invariável de tipo criado.(a) => novo {blá = b}
A segunda é uma consulta linq preenchendo uma classe instantânea que possui uma propriedade Line.Não há operador hashrocket neste, então este é simplesmente o antigo linq.
O nome da segunda forma é "sintaxe de compreensão de consulta", que o compilador traduz na primeira forma.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow