Lambda Las expresiones son funciones sin nombre dadas como valores constantes. Pueden aparecer en cualquier lugar que pueda tener cualquier otra constante, pero normalmente se escriben como un parámetro para alguna otra función. El ejemplo canónico es que pasará una función de comparación a una rutina genérica de "clasificación", y en lugar de tomarse la molestia de definir una función completa (e incurrir en la discontinuidad léxica y la contaminación del espacio de nombres) para describir esta comparación, puede simplemente pasa una expresión lambda que describe la comparación.
SIN EMBARGO, esto omite una de las características más importantes de Lambda Expressions, que es que se ejecutan en el contexto de su apariencia. Por lo tanto, pueden usar los valores de las variables que se definen en ese contexto. Esto diferencia a los punteros de función de las verdaderas expresiones lambda. En los lenguajes que admiten variables mutables, las expresiones lambda adecuadas ofrecen la posibilidad de cambiar los valores de esas variables.
Las expresiones lambda aparecen (con sintaxis diferente) en todos los LISP, Perl, Python y versiones suficientemente recientes de C++, Objective C, C# y Java 8, pero notablemente no en C aunque tiene una forma de tratar pasando funciones (o alguna excusa para ellas) alrededor como parámetros. Son un elemento de sintaxis con una semántica particular, y esa semántica establece más requisitos en el tiempo de ejecución de los que C estaba diseñado para requerir.
http://stackoverflow.com/questions/471502/what-is-linq/471592#471592 La parte de arriba "Vamos a empezar esta exploración". –
Todos los métodos LINQ llevan el nombre. Algunos toman métodos sin nombre como parámetros, es decir, métodos anónimos o expresiones lambda – Greg
No puedo creer la cantidad de personas que respondieron este duplicado obvio. –