Sdílet prostřednictvím


Jak: Uložit výsledky dotazu do paměti (Příručka programování C#)

Dotaz je v podstatě sada pokynů, jak získat a uspořádat data.Spuštění dotazu volání vyžaduje jeho GetEnumerator metoda.Tohoto hovoru při použití foreach smyčky k iterování prvky.Pro uložení výsledků v každém okamžiku před nebo po spuštění foreach smyčka, pouze jednu z následujících metod můžete volat na proměnnou dotazu:

Doporučujeme, abyste při ukládání výsledků dotazu přiřadit objektu vráceného kolekce novou proměnnou jak ukazuje následující příklad:

Příklad

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();
    }
}

Probíhá kompilace kódu

  • Vytvoření Visual Studio projektu, který se zaměřuje.NET Framework verze 3.5.Ve výchozím nastavení projektu odkazuje na System.Core.dll a using směrnice pro obor názvů System.Linq.

  • Zkopírujte kód do projektu.

  • Stisknutím klávesy F5 sestavit a spustit program.

  • Stisknutím libovolné klávesy uzavřete okno konzoly.

Viz také

Koncepty

LINQ dotazu výrazy (Příručka programování C#)