Freigeben über


Ausdrucksbaumstrukturen in LINQ

Aktualisiert: November 2007

In LINQ werden Ausdrucksbaumstrukturen verwendet, um strukturierte Abfragen darzustellen, die auf Quellen mit Daten abzielen, durch die IQueryable<T> implementiert wird. Beispielsweise implementiert der LINQ to SQL-Anbieter die IQueryable<T>-Schnittstelle zum Abfragen relationaler Datenspeicher. Die Compiler von C# und Visual Basic kompilieren Abfragen, die auf diese Datenquellen ausgerichtet sind, in Code, durch den zur Laufzeit eine Ausdrucksbaumstruktur generiert wird. Anschließend kann der Abfrageanbieter die Datenstruktur der Ausdrucksbaumstruktur durchlaufen und in eine für die Datenquelle geeignete Abfragesprache übersetzen.

Ausdrucksbaumstrukturen werden in LINQ auch zur Darstellung von lambda-Ausdrücken verwendet, die Variablen vom Typ Expression<TDelegate> zugewiesen werden.

Ausdrucksstrukturen können darüber hinaus zum Erstellen dynamischer LINQ-Abfragen verwendet werden. Weitere Informationen finden Sie unter Gewusst wie: Verwenden von Ausdrucksbaumstrukturen zum Erstellen dynamischer Abfragen. Sie könnten auch Ausdrucksbaumstrukturen verwenden, wenn Sie einen LINQ-Anbieter erstellen. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Erstellen eines IQueryable-LINQ-Anbieters.

Siehe auch

Aufgaben

Gewusst wie: Ausführen von Ausdrucksbaumstrukturen

Gewusst wie: Ändern von Ausdrucksbaumstrukturen

Konzepte

Ausdrucksbaumstrukturen