Expression Klasse
Definition
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.
Ein Ausdruck, der analysiert oder ausgewertet werden kann, um einen Wert zu erzeugen.
public class Expression
type Expression = class
Public Class Expression
- Vererbung
-
Expression
- Abgeleitet
Hinweise
Dies bietet einen offenen Wrapper, der eine Reihe integrierter Funktionen unterstützt und auch zur Laufzeit erweitert werden kann. Es unterstützt außerdem die Validierung der Korrektheit eines Ausdrucks und einer Bewertung, die frei von Ausnahmen sein sollte.
Konstruktoren
| Name | Beschreibung |
|---|---|
| Expression(ExpressionEvaluator, Expression[]) |
Initialisiert eine neue Instanz der Expression-Klasse. Ausdruckskonstruktor. |
| Expression(String, Expression[]) |
Initialisiert eine neue Instanz der Expression-Klasse. Eingebauter Ausdruckskonstruktor. |
Felder
| Name | Beschreibung |
|---|---|
| Functions |
Dictionary of function => ExpressionEvaluator. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Children |
Bekommt oder setzt Kindergesichtsausdrücke. |
| Evaluator |
Bekommt den Ausdrucksbewerter. |
| ReturnType |
Erhält das erwartete Ergebnis der Auswertung von Ausdruck. |
| Type |
Versteht die Art des Ausdrucks. |
Methoden
| Name | Beschreibung |
|---|---|
| Accessor(String, Expression) |
Konstruiere und validiere einen Property-Accessor. |
| AndExpression(Expression[]) |
Konstruiere und validiere einen Und-Ausdruck. |
| ConstantExpression(Object) |
Konstruiere einen konstanten Ausdruck. |
| DeepEquals(Expression) |
Mach eine tiefe Gleichheit zwischen den Ausdrucksformen. |
| EqualsExpression(Expression[]) |
Konstruiere und validiere einen Equals-Ausdruck. |
| LambaExpression(EvaluateExpressionDelegate) |
Konstruiere einen Ausdruck aus einem EvaluateExpressionDelegate. |
| Lambda(Func<Object,Object>) |
Konstruiere einen Ausdruck aus einem Lambda-Ausdruck über dem Zustand. |
| Lookup(String) |
Suchen Sie einen ExpressionEvaluator (Funktion) nach Name. |
| MakeExpression(ExpressionEvaluator, Expression[]) |
Mach einen Ausdruck und validiere ihn. |
| MakeExpression(String, Expression[]) |
Mach einen Ausdruck und validiere ihn. |
| NotExpression(Expression) |
Konstruiere und validiere einen Nicht-Ausdruck. |
| OrExpression(Expression[]) |
Konstruiere und validiere einen Or-Ausdruck. |
| Parse(String, EvaluatorLookup) |
Parse eine Ausdruckszeichenkette in ein Ausdrucksobjekt. |
| References() |
Geben Sie die statischen Referenzpfade in den Speicher zurück. |
| ReferenceWalk(Expression, Func<Expression,Boolean>) |
Walking-Funktion zur Identifikation statischer Speicherreferenzen in einem Ausdruck. |
| SetPathToValue(Expression, Expression) |
Konstruiere und validiere einen Eigenschaftsausdruck an einen Wertausdruck. |
| SetPathToValue(Expression, Object) |
Konstruiere und validiere einen Eigenschaftsausdruck an einen Wertausdruck. |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. |
| TryEvaluate(IMemory, Options) |
Bewerten Sie den Ausdruck. |
| TryEvaluate(Object, Options) |
Bewerten Sie den Ausdruck. |
| TryEvaluate<T>(IMemory, Options) |
Bewerten Sie den Ausdruck. |
| TryEvaluate<T>(Object, Options) |
Bewerten Sie den Ausdruck. |
| Validate() |
Validiere sofortige Ausdrucksform. |
| ValidateTree() |
Validiere den Ausdrucksbaum rekursiv. |
Operatoren
| Name | Beschreibung |
|---|---|
| Implicit(String to Expression) |
Erlaubt es, dass eine Zeichenkette implizit einer Ausdruckseigenschaft zugeordnet wird. |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| DisjunctiveNormalForm(Expression) |
Schreibe den Ausdruck in eine disjunktive Normalform um. |
| PushDownNot(Expression) |
Schreibe den Ausdruck um, indem du nicht auf die Blätter drückst. |