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

Consultas de ejecución inmediata de LINQ

La ejecución inmediata es lo contrario de la ejecución diferida. Fuerza a que la consulta LINQ se ejecute y obtenga los resultados inmediatamente. El operador de conversión "To" ejecuta la consulta dada y proporciona los resultados inmediatamente.

Sintaxis de método

En el siguiente ejemplo, el método de extensión ToList() ejecuta la consulta inmediatamente y devuelve los resultados.

 C#: Ejecutar inmediatamente

IList<Student> teenAgerStudents = 
                studentList.Where(s => s.age > 12 Y s.age < 20).ToList();

 VB.Net: Ejecutar inmediatamente

Dim teenAgerStudents As IList(Of Student) = 
                    studentList.Where(Function(s) s.Age > 12 Y s.Age < 20).ToList()

Sintaxis de consulta

C#:
var teenAgerStudents = from s in studentList
                Donde s.age > 12 Y s.age < 20
                select s;

La consulta anterior no se ejecutará inmediatamente. No encontrará ningún resultado, como se muestra a continuación:

Ejecutar inmediatamente

La sintaxis de consulta no admite el operador "To", pero se puede ejecutar inmediatamente utilizando ToList(), ToArray() o ToDictionary(), como se muestra a continuación:

C#:
IList<Student> teenAgerStudents = (from s in studentList
                Donde s.age > 12 Y s.age < 20
                select s).ToList();
VB.Net:
Dim teenAgerStudents As IList(Of Student) = (From s In studentList _
                Donde s.Age > 12 Y s.Age < 20 _
                Select s).ToList()

Puede ver los resultados en la colección teenAgerStudents, como se muestra a continuación:

Ejecutar inmediatamente