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

LINQ 立即実行検索

即座実行は遅延実行の逆で、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()

クエリ文法

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

上記のクエリは即座に実行されません。以下のようになります:

即座に実行

クエリ文法は“To”演算子をサポートしていませんが、ToList()、ToArray()、またはToDictionary()を使用して即座に実行できます。以下のようになります:

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

teenAgerStudents コレクションで結果を確認できます。以下のようになります:

即座に実行