|
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
|
Übersetzung
Original
|
LINQ-Abfrageausdrücke (C#-Programmierhandbuch)
class LINQQueryExpressions { static void Main() { // Specify the data source. int[] scores = new int[] { 97, 92, 81, 60 }; // Define the query expression. IEnumerable<int> scoreQuery = from score in scores where score > 80 select score; // Execute the query. foreach (int i in scoreQuery) { Console.Write(i + " "); } } } // Output: 97 92 81
-
Abfrageausdrücke können verwendet werden, um Daten von einer LINQ-aktivierten Datenquelle abzufragen und zu transformieren. Eine einzelne Abfrage kann beispielsweise Daten aus einer SQL-Datenbank abrufen und als Ausgabe einen XML-Stream erzeugen. -
Der Umgang mit Abfrageausdrücken ist nicht schwer zu erlernen, da sie viele vertraute C#-Sprachkonstrukte verwenden. Weitere Informationen finden Sie unter Erste Schritte mit LINQ in C#. -
Die Variablen in einem Abfrageausdruck sind alle stark typisiert, obwohl Sie in vielen Fällen den Typ nicht explizit angeben müssen, da der Compiler ihn ableiten kann. Weitere Informationen finden Sie unter Typbeziehungen in LINQ-Abfragevorgängen (C#). -
Die Abfrage wird so lange nicht ausgeführt, bis Sie die Abfragevariable in einer foreach-Anweisung durchlaufen. Weitere Informationen hierzu finden Sie unter Einführung in LINQ-Abfragen (C#). -
Abfrageausdrücke werden bei der Kompilierung gemäß den Regeln der C#-Spezifikation in Standardabfrageoperator-Methodenaufrufe konvertiert. Abfragen, die durch eine Abfragesyntax ausgedrückt werden können, können auch mit der Methodensyntax ausgedrückt werden. In den meisten Fällen ist die Abfragesyntax jedoch leichter lesbar und präziser. Weitere Informationen finden Sie unter C#-Sprachspezifikation und unter Übersicht über Standardabfrageoperatoren. -
Als Regel gilt: Wenn Sie LINQ-Abfragen schreiben, ist es empfehlenswert, dass Sie wenn immer möglich die Abfragesyntax und wenn immer notwendig die Methodensyntax verwenden. Es gibt keinen Semantik- oder Leistungsunterschied zwischen den beiden. Abfrageausdrücke sind oft leichter lesbar als entsprechende in Methodensyntax geschriebene Ausdrücke. -
Einige Abfrageoperationen, z. B. Count oder Max, haben keine entsprechende Abfrageausdruckklausel und müssen daher als Methodenaufruf ausgedrückt werden. Die Methodensyntax kann auf verschiedene Weisen mit der Abfragesyntax kombiniert werden. Weitere Informationen finden Sie unter Abfragesyntax und Methodensyntax in LINQ (C#). -
Abfrageausdrücke können je nach dem Typ, auf den die Abfrage angewendet wird, zu Ausdrucksbaumstrukturen oder zu Delegaten kompiliert werden. IEnumerable<T> -Abfragen werden zu Delegaten kompiliert. IQueryable -Abfragen und IQueryable<T>-Abfragen werden zu Ausdrucksbaumstrukturen kompiliert. Weitere Informationen finden Sie unter Ausdrucksbaumstrukturen (C# und Visual Basic).
|
|
|
|---|---|
|
|
|
|
|
|
|
Gewusst wie: Behandeln von Ausnahmen in Abfrageausdrücken (C#-Programmierhandbuch) |
|
|
Gewusst wie: Füllen von Objektauflistungen aus mehreren Quellen (LINQ) |
|
|
Gewusst wie: Gruppieren von Abfrageergebnissen (C#-Programmierhandbuch) |
|
|
Gewusst wie: Erstellen einer geschachtelten Gruppe (C#-Programmierhandbuch) |
|
|
Gewusst wie: Ausführen einer Unterabfrage für eine Gruppierungsoperation (C#-Programmierhandbuch) |
|
|
Gewusst wie: Gruppieren von Ergebnissen nach zusammenhängenden Schlüsseln (C#-Programmierhandbuch) |
|
|
Gewusst wie: Dynamisches Festlegen von Prädikatfiltern zur Laufzeit (C#-Programmierhandbuch) |
|
|
Gewusst wie: Speichern der Ergebnisse einer Abfrage im Speicher (C#-Programmierhandbuch) |
|
|
Gewusst wie: Zurückgeben einer Abfrage aus einer Methode (C#-Programmierhandbuch) |
|
|
Gewusst wie: Ausführen von benutzerdefinierten Verknüpfungsoperationen (C#-Programmierhandbuch) |
|
|
Gewusst wie: Verknüpfen mithilfe eines zusammengesetzten Schlüssels (C#-Programmierhandbuch) |
|
|
Gewusst wie: Sortieren der Ergebnisse einer Join-Klausel (C#-Programmierhandbuch) |
|
|
Gewusst wie: Ausführen innerer Verknüpfungen (C#-Programmierhandbuch) |
|
|
Gewusst wie: Ausführen von Gruppenverknüpfungen (C#-Programmierhandbuch) |
|
|
Gewusst wie: Ausführen linker äußerer Verknüpfungen (C#-Programmierhandbuch) |
|
|
Gewusst wie: Behandeln von NULL-Werten in Abfrageausdrücken (C#-Programmierhandbuch) |
|