Freigeben über


UnaryExpression Klasse

Definition

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
UnaryExpression

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)

Gilt für: