UnaryExpression Classe

Definizione

Rappresenta un'espressione con un operatore unario.

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
Ereditarietà
UnaryExpression

Esempio

Nell'esempio seguente viene creato un UnaryExpression oggetto che rappresenta la conversione di riferimento di un'espressione integer non nullable nel tipo integer nullable.

// 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)

Commenti

Nella tabella seguente vengono riepilogati i metodi factory che possono essere usati per creare un UnaryExpression oggetto con un tipo di nodo specifico.

NodeType Metodo Factory
ArrayLength ArrayLength
Convert Convert
ConvertChecked ConvertChecked
Negate Negate
NegateChecked NegateChecked
Not Not
Quote Quote
TypeAs TypeAs
UnaryPlus UnaryPlus

Inoltre, i MakeUnary metodi possono essere usati anche per creare un oggetto UnaryExpression. Questi metodi factory possono essere usati per creare un UnaryExpression oggetto di qualsiasi tipo di nodo che rappresenta un'operazione unaria. Il parametro di questi metodi di tipo NodeType specifica il tipo di nodo desiderato.

Proprietà

Nome Descrizione
CanReduce

Ottiene un valore che indica se il nodo dell'albero delle espressioni può essere ridotto.

IsLifted

Ottiene un valore che indica se il nodo dell'albero delle espressioni rappresenta una chiamata lifted a un operatore.

IsLiftedToNull

Ottiene un valore che indica se il nodo dell'albero delle espressioni rappresenta una chiamata lifted a un operatore il cui tipo restituito viene sollevato su un tipo nullable.

Method

Ottiene il metodo di implementazione per l'operazione unaria.

NodeType

Restituisce il tipo di nodo dell'oggetto Expression.

NodeType

Ottiene il tipo di nodo dell'oggetto Expression.

(Ereditato da Expression)
Operand

Ottiene l'operando dell'operazione unaria.

Type

Ottiene il tipo statico dell'espressione rappresentata da .Expression

Type

Ottiene il tipo statico dell'espressione rappresentata da .Expression

(Ereditato da Expression)

Metodi

Nome Descrizione
Accept(ExpressionVisitor)

Invia al metodo visit specifico per questo tipo di nodo. Ad esempio, MethodCallExpression chiama .VisitMethodCall(MethodCallExpression)

(Ereditato da Expression)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
Reduce()

Riduce il nodo dell'espressione a un'espressione più semplice.

ReduceAndCheck()

Riduce questo nodo a un'espressione più semplice. Se CanReduce restituisce true, verrà restituita un'espressione valida. Questo metodo può restituire un altro nodo che deve essere ridotto.

(Ereditato da Expression)
ReduceExtensions()

Riduce l'espressione a un tipo di nodo noto (che non è un nodo di estensione) o restituisce semplicemente l'espressione se è già un tipo noto.

(Ereditato da Expression)
ToString()

Restituisce una rappresentazione testuale dell'oggetto Expression.

(Ereditato da Expression)
Update(Expression)

Crea una nuova espressione simile a questa, ma utilizzando gli elementi figlio forniti. Se tutti gli elementi figlio sono uguali, restituirà questa espressione.

VisitChildren(ExpressionVisitor)

Riduce il nodo e quindi chiama il delegato visitor nell'espressione ridotta. Il metodo genera un'eccezione se il nodo non è reducibile.

(Ereditato da Expression)

Si applica a