English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Palabra clave let de LINQ

La palabra clave 'let' es muy útil en la sintaxis de la consulta. Proyecta una nueva variable de rango, lo que permite la repetición de uso de expresiones y hace que la consulta sea más legible.

Por ejemplo, puede comparar valores de cadena y seleccionar valores de cadena en minúsculas, como se muestra a continuación:

IList<Student> studentList = new List<Student>() { 
    new Student() { StudentID = 1, StudentName = "John", Age = 18 }
    new Student() { StudentID = 2, StudentName = "Steve",  Age = 21 }
    new Student() { StudentID = 3, StudentName = "Bill",  Age = 18 }
    new Student() { StudentID = 4, StudentName = "Ram" , Age = 20 } ,
    new Student() { StudentID = 5, StudentName = "Ron", Age = 21 } 
};
var lowercaseStudentNames = from s in studentList
                            where s.StudentName.ToLower().StartsWith("r")
                            select s.StudentName.ToLower();

Como puede ver, el método ToLower() se utiliza varias veces en la consulta anterior. El siguiente ejemplo utiliza "let" para introducir una nueva variable "lowercaseStudentName", y luego se utiliza en todos los lugares.letLas palabras clave hacen que la consulta sea más legible.

Ejemplo: Palabra clave let en C#

var lowercaseStudentNames = from s in studentList
                            let lowercaseStudentName = s.StudentName.ToLower()
                                where lowercaseStudentName.StartsWith("r")
                                select lowercaseStudentName;
foreach (var name in lowercaseStudentNames)
	Console.WriteLine(name);
Ejemplo: Palabra clave let en VB.Net
Dim lowercaseStudentNames = From s In studentList
                            Let lowercaseStudentName = s.StudentName.ToLower()
                                Where lowercaseStudentName.StartsWith("r")
                                Select lowercaseStudentName;
Salida:
ram
ron