Gewusst wie: Speichern der Ergebnisse einer Abfrage im Speicher (C#-Programmierhandbuch)

Aktualisiert: November 2007

Eine Abfrage ist im Grunde ein Satz von Anweisungen, wie Daten abgerufen und organisiert werden. Um die Abfrage auszuführen, muss die GetEnumerator-Methode aufgerufen werden. Dieser Aufruf wird durchgeführt, wenn Sie eine foreach-Schleife zum Durchlaufen der Elemente verwenden. Sie können die Ergebnisse jederzeit bevor und nachdem Sie die foreach-Schleife ausführen speichern, indem Sie eine der folgenden Methoden für die Abfragevariable aufrufen:

Es wird empfohlen, das zurückgegebene Auflistungsobjekt beim Speichern der Abfrageergebnisse einer neuen Variable zuzuweisen, wie es im folgenden Beispiel dargestellt wird:

Beispiel

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

Kompilieren des Codes

  • Erstellen Sie ein Visual Studio-Projekt für .NET Framework, Version 3.5. Standardmäßig hat das Projekt einen Verweis auf System.Core.dll und eine using-Direktive für den System.Linq-Namespace.

  • Kopieren Sie den Code in Ihr Projekt.

  • Drücken Sie F5, um das Programm zu kompilieren und auszuführen.

  • Drücken Sie eine beliebige Taste, um das Konsolenfenster zu schließen.

Siehe auch

Konzepte

LINQ-Abfrageausdrücke (C#-Programmierhandbuch)