English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
即座実行は遅延実行の逆で、LINQクエリを実行し、結果を即座に取得することを強制します。“To”変換演算子は与えられたクエリを実行し、結果を即座に提供します。
以下の例では、ToList()拡張メソッドがクエリを実行し、結果を返します。
C#:即座に実行
IList<Student> teenAgerStudents = studentList.Where(s => s.age > 12 && s.age < 20).ToList();
VB.Net:即座に実行
Dim teenAgerStudents As IList(Of Student) = studentList.Where(Function(s) s.Age > 12 And s.Age < 20).ToList()
var teenAgerStudents = from s in studentList where s.age > 12 && s.age < 20 select s;
上記のクエリは即座に実行されません。以下のようになります:
クエリ文法は“To”演算子をサポートしていませんが、ToList()、ToArray()、またはToDictionary()を使用して即座に実行できます。以下のようになります:
IList<Student> teenAgerStudents = (from s in studentList where s.age > 12 && s.age < 20 select s).ToList();
Dim teenAgerStudents As IList(Of Student) = (From s In studentList _ Where s.Age > 12 And s.Age < 20 _ Select s).ToList()
teenAgerStudents コレクションで結果を確認できます。以下のようになります: