UnaryExpression 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.
Stellt einen Ausdruck mit einem unären Operator dar.
public ref class UnaryExpression sealed : System::Linq::Expressions::Expression
public sealed class UnaryExpression : System.Linq.Expressions.Expression
type UnaryExpression = class
inherit Expression
Public NotInheritable Class UnaryExpression
Inherits Expression
- Vererbung
Beispiele
Im folgenden Beispiel wird ein UnaryExpression -Objekt erstellt, das die Verweiskonvertierung eines ganzzahligen Ausdrucks ohne Nullable in den ganzzahligen Nullable-Typ darstellt.
// Create a UnaryExpression that represents a
// conversion of an int to an int?.
System.Linq.Expressions.UnaryExpression typeAsExpression =
System.Linq.Expressions.Expression.TypeAs(
System.Linq.Expressions.Expression.Constant(34, typeof(int)),
typeof(int?));
Console.WriteLine(typeAsExpression.ToString());
// This code produces the following output:
//
// (34 As Nullable`1)
' Create a UnaryExpression that represents a reference
' conversion of an Integer to an Integer? (a nullable Integer).
Dim typeAsExpression As System.Linq.Expressions.UnaryExpression = _
System.Linq.Expressions.Expression.TypeAs( _
System.Linq.Expressions.Expression.Constant(34, Type.GetType("System.Int32")), _
Type.GetType("System.Nullable`1[System.Int32]"))
Console.WriteLine(typeAsExpression.ToString())
' This code produces the following output:
'
' (34 As Nullable`1)
Hinweise
In der folgenden Tabelle sind die Factorymethoden zusammengefasst, die zum Erstellen eines UnaryExpression mit einem bestimmten Knotentyp verwendet werden können.
NodeType | Factory-Methode |
---|---|
ArrayLength | ArrayLength |
Convert | Convert |
ConvertChecked | ConvertChecked |
Negate | Negate |
NegateChecked | NegateChecked |
Not | Not |
Quote | Quote |
TypeAs | TypeAs |
UnaryPlus | UnaryPlus |
Darüber hinaus können die MakeUnary Methoden auch zum Erstellen eines UnaryExpressionverwendet werden. Diese Factorymethoden können verwendet werden, um einen UnaryExpression beliebigen Knotentyp zu erstellen, der einen unären Vorgang darstellt. Der Parameter dieser Methoden vom Typ NodeType gibt den gewünschten Knotentyp an.
Eigenschaften
CanReduce |
Ruft einen Wert ab, der angibt, ob der Knoten der Ausdrucksbaumstruktur reduziert werden kann. |
CanReduce |
Gibt an, dass der Knoten zu einem einfacheren Knoten reduziert werden kann. Wenn true zurückgegeben wird, kann Reduce() aufgerufen werden, um das reduzierte Formular zu erzeugen. (Geerbt von Expression) |
IsLifted |
Ruft einen Wert ab, der angibt, ob der Ausdrucksstrukturknoten einen transformierten Aufruf eines Operators darstellt. |
IsLiftedToNull |
Ruft einen Wert ab, der angibt, ob der Ausdrucksstrukturknoten einen transformierten Aufruf eines Operators darstellt, dessen Rückgabetyp zu einem Typ transformiert wird, der NULL-Werte zulässt. |
Method |
Ruft die implementierende Methode für die unäre Operation ab. |
NodeType |
Gibt den Knotentyp dieses Expression zurück. |
NodeType |
Ruft den Knotentyp dieses Expression ab. (Geerbt von Expression) |
Operand |
Ruft den Operanden der unären Operation ab. |
Type |
Ruft den statischen Typ des Ausdrucks ab, den dieser Expression darstellt. |
Type |
Ruft den statischen Typ des Ausdrucks ab, den dieser Expression darstellt. (Geerbt von Expression) |
Methoden
Accept(ExpressionVisitor) |
Sendet an die spezifische Visit-Methode für diesen Knotentyp. Beispielsweise ruft MethodCallExpression die Methode VisitMethodCall(MethodCallExpression) auf. (Geerbt von Expression) |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
Reduce() |
Reduziert auf den Ausdrucksknoten auf einen einfacheren Ausdruck. |
Reduce() |
Reduziert diesen Knoten zu einem einfacheren Ausdruck. Wenn CanReduce true zurückgibt, sollte ein gültiger Ausdruck zurückgegeben werden. Diese Methode kann einen anderen Knoten zurückgeben, der selbst reduziert werden muss. (Geerbt von Expression) |
ReduceAndCheck() |
Reduziert diesen Knoten zu einem einfacheren Ausdruck. Wenn CanReduce true zurückgibt, sollte ein gültiger Ausdruck zurückgegeben werden. Diese Methode kann einen anderen Knoten zurückgeben, der selbst reduziert werden muss. (Geerbt von Expression) |
ReduceExtensions() |
Reduziert den Ausdruck zu einem bekannten Knotentyp (kein Erweiterungsknoten) oder gibt nur den Ausdruck zurück, wenn es sich um einen bereits bekannten Typ handelt. (Geerbt von Expression) |
ToString() |
Gibt eine Textdarstellung des Expression zurück. (Geerbt von Expression) |
Update(Expression) |
Erstellt einen neuen Ausdruck, der diesem ähnelt, verwendet jedoch die angegebenen untergeordneten Elemente. Wenn alle untergeordneten Elemente identisch sind, wird dieser Ausdruck zurückgegeben. |
VisitChildren(ExpressionVisitor) |
Reduziert den Knoten und ruft dann den Visitor-Delegaten für den reduzierten Ausdruck auf. Die Methode löst eine Ausnahme aus, wenn der Knoten nicht reduziert werden kann. (Geerbt von Expression) |