System.Linq.Expressions Namespace
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Enthält Klassen, Schnittstellen und Enumerationen, mit denen Codeausdrücke auf Sprachebene als Objekte in Form von Ausdrucksstrukturen dargestellt werden können.
Klassen
| Name | Beschreibung |
|---|---|
| BinaryExpression |
Stellt einen Ausdruck dar, der über einen binären Operator verfügt. |
| BlockExpression |
Stellt einen Block dar, der eine Abfolge von Ausdrücken enthält, in denen Variablen definiert werden können. |
| CatchBlock |
Stellt eine Catch-Anweisung in einem Try-Block dar. |
| ConditionalExpression |
Stellt einen Ausdruck dar, der über einen bedingten Operator verfügt. |
| ConstantExpression |
Stellt einen Ausdruck dar, der einen konstanten Wert aufweist. |
| DebugInfoExpression |
Gibt einen Sequenzpunkt für Debuginformationen aus oder löscht diesen. Auf diese Weise kann der Debugger beim Debuggen den richtigen Quellcode hervorheben. |
| DefaultExpression |
Stellt den Standardwert eines Typs oder eines leeren Ausdrucks dar. |
| DynamicExpression |
Stellt einen dynamischen Vorgang dar. |
| DynamicExpressionVisitor |
Stellt einen Besucher oder eine Neuschreibmaschine für dynamische Ausdrucksstrukturen dar. |
| ElementInit |
Stellt einen Initialisierer für ein einzelnes Element einer IEnumerable Auflistung dar. |
| Expression |
Stellt die Basisklasse bereit, von der die Klassen, die Ausdrucksstrukturknoten darstellen, abgeleitet werden. Sie enthält |
| Expression<TDelegate> |
Stellt einen stark typierten Lambda-Ausdruck als Datenstruktur in Form einer Ausdrucksstruktur dar. Diese Klasse kann nicht vererbt werden. |
| ExpressionVisitor |
Stellt einen Besucher oder eine Neuautorin für Ausdrucksstrukturen dar. |
| GotoExpression |
Stellt einen bedingungslosen Sprung dar. Dazu gehören Rückgabeanweisungen, Unterbrechungs- und Fortsetzungsanweisungen und andere Sprünge. |
| IndexExpression |
Stellt die Indizierung einer Eigenschaft oder eines Arrays dar. |
| InvocationExpression |
Stellt einen Ausdruck dar, der einen Delegaten- oder Lambda-Ausdruck auf eine Liste von Argumentausdrücken anwendet. |
| LabelExpression |
Stellt eine Bezeichnung dar, die in beliebigem Expression Kontext platziert werden kann. Wenn sie gesprungen wird, wird der vom entsprechenden GotoExpressionWert bereitgestellte Wert abgerufen. Andernfalls erhält sie den Wert in DefaultValue. Wenn " Type System.Void" gleich ist, sollte kein Wert angegeben werden. |
| LabelTarget |
Wird verwendet, um das Ziel einer .GotoExpression |
| LambdaExpression |
Beschreibt einen Lambda-Ausdruck. Dadurch wird ein Codeblock erfasst, der einem .NET-Methodentext ähnelt. |
| ListInitExpression |
Stellt einen Konstruktoraufruf dar, der über einen Auflistungsinitialisierer verfügt. |
| LoopExpression |
Stellt eine Endlosschleife dar. Er kann mit "Break" beendet werden. |
| MemberAssignment |
Stellt den Zuordnungsvorgang für ein Feld oder eine Eigenschaft eines Objekts dar. |
| MemberBinding |
Stellt die Basisklasse bereit, von der die Klassen, die Bindungen darstellen, die zum Initialisieren von Membern eines neu erstellten Objekts verwendet werden. |
| MemberExpression |
Stellt den Zugriff auf ein Feld oder eine Eigenschaft dar. |
| MemberInitExpression |
Stellt den Aufruf eines Konstruktors dar und initialisiert ein oder mehrere Elemente des neuen Objekts. |
| MemberListBinding |
Stellt die Initialisierung der Elemente eines Auflistungselements eines neu erstellten Objekts dar. |
| MemberMemberBinding |
Stellt die Initialisierung von Elementen eines Elements eines neu erstellten Objekts dar. |
| MethodCallExpression |
Stellt einen Aufruf einer statischen oder einer Instanzmethode dar. |
| NewArrayExpression |
Stellt das Erstellen eines neuen Arrays dar und initialisiert möglicherweise die Elemente des neuen Arrays. |
| NewExpression |
Stellt einen Konstruktoraufruf dar. |
| ParameterExpression |
Stellt einen benannten Parameterausdruck dar. |
| RuntimeVariablesExpression |
Ein Ausdruck, der Laufzeit-Lese-/Schreibberechtigungen für Variablen bereitstellt. |
| SwitchCase |
Stellt einen Fall eines .SwitchExpression |
| SwitchExpression |
Stellt einen Steuerelementausdruck dar, der mehrere Auswahlen behandelt, indem das Steuerelement übergeben wird SwitchCase. |
| SymbolDocumentInfo |
Speichert Informationen, die zum Ausgeben von Debugsymbolinformationen für eine Quelldatei erforderlich sind, insbesondere den Dateinamen und den eindeutigen Sprachbezeichner. |
| TryExpression |
Stellt einen try/catch/finally/fault-Block dar. |
| TypeBinaryExpression |
Stellt einen Vorgang zwischen einem Ausdruck und einem Typ dar. |
| UnaryExpression |
Stellt einen Ausdruck dar, der über einen unären Operator verfügt. |
Schnittstellen
| Name | Beschreibung |
|---|---|
| IArgumentProvider |
Stellt eine interne Schnittstelle für den Zugriff auf die Argumente mehrerer Strukturknoten bereit (DynamicExpression, ElementInit, MethodCallExpression, InvocationExpression, NewExpression und IndexExpression). Diese API ist nur für die interne Verwendung vorgesehen. |
| IDynamicExpression |
Stellt eine interne Schnittstelle für den Zugriff auf die Argumente von DynamicExpression-Strukturknoten sowie CallSite- und Rewriting-Funktionen bereit. Sie sollten diese API nicht verwenden. Sie ist nur aufgrund der DLL-Umgestaltung öffentlich und nur für interne Leistungsoptimierungen vorhanden. |
Enumerationen
| Name | Beschreibung |
|---|---|
| ExpressionType |
Beschreibt die Knotentypen für die Knoten einer Ausdrucksstruktur. |
| GotoExpressionKind |
Gibt an, welche Art von Sprung dieses GotoExpression darstellt. |
| MemberBindingType |
Beschreibt die Bindungstypen, die in MemberInitExpression -Objekten verwendet werden. |
Hinweise
Die abstrakte Klasse Expression stellt den Stamm einer Klassenhierarchie bereit, die zum Modellieren von Ausdrucksstrukturen verwendet wird.
Die Klassen in diesem Namespace, die von , zMemberExpression. B. und ParameterExpression, abgeleitet Expressionwerden, werden verwendet, um Knoten in einer Ausdrucksstruktur darzustellen. Die Expression-Klasse enthält static (Shared in Visual Basic)-Factorymethoden, um Ausdrucksstrukturknoten der verschiedenen Typen zu erstellen.
Der Enumerationstyp ExpressionType gibt die eindeutigen Knotentypen an.