Escrito el 12/04/2024
Tutorial LINQ: deferer execution con LINQ
deferer execution significa que no se evalúa una expresión hasta necesitarse. Esto ayuda a la permormance del código evitando ejecuciones no necesarias
var words = allWords.Where(x => x.Lenght < 3);// la expresión lamda no se ejecuta
foreach (var word in words){// se ejecuta aquí
Console.WriteLine(word);
}
allWords.Add("ahí");
foreach (var word in words){// se ejecuta aquí también
Console.WriteLine(word);
}
En este caso, se modificó la colleción inicial y la expresión lamda se ejecutó nuevamente con la colleción modificada.
Los métodos ToList(), ToArray(), ToDictionary(), etc fuerza la ejecución de la expresión lamda