方法 : クエリの結果をメモリに格納する (C# プログラミング ガイド)

更新 : 2007 年 11 月

基本的に、クエリは、データの取得方法と編成方法を指示するための一連の命令です。クエリを実行するには、GetEnumerator メソッドを呼び出す必要があります。この呼び出しは、foreach ループを使用して要素を反復処理する際に行います。foreach ループの実行前または実行後の結果を格納するには、クエリ変数に対して次のいずれかのメソッドを呼び出します。

クエリ結果を格納するときは、次の例に示すように、返されたコレクション オブジェクトを新しい変数に代入することをお勧めします。

使用例

class StoreQueryResults
{
    static List<int> numbers = new List<int>() { 1, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20 };
    static void Main()
    {

        IEnumerable<int> queryFactorsOfFour =
            from num in numbers
            where num % 4 == 0
            select num;

        // Store the results in a new variable
        // without executing a foreach loop.
        List<int> factorsofFourList = queryFactorsOfFour.ToList();

        // Iterate the list just to prove it holds data.
        foreach (int n in factorsofFourList)
        {
            Console.WriteLine(n);
        }

        // Keep the console window open in debug mode.
        Console.WriteLine("Press any key");
        Console.ReadKey();
    }
}

コードのコンパイル方法

  • .NET Framework Version 3.5 を対象とする Visual Studio プロジェクトを作成します。既定では、プロジェクトには System.Core.dll への参照と System.Linq 名前空間に対する using ディレクティブが含まれます。

  • コードをプロジェクト内にコピーします。

  • F5 キーを押して、プログラムをコンパイルおよび実行します。

  • 任意のキーを押して、コンソール ウィンドウを終了します。

参照

概念

LINQ クエリ式 (C# プログラミング ガイド)