UnaryExpression Klass

Definition

Representerar ett uttryck som har en unary-operator.

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
Arv
UnaryExpression

Exempel

I följande exempel skapas ett UnaryExpression objekt som representerar referenskonverteringen av ett heltalsuttryck som inte går att nolla till heltalstypen null.

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

Kommentarer

I följande tabell sammanfattas de fabriksmetoder som kan användas för att skapa en UnaryExpression som har en specifik nodtyp.

NodeType Fabriceringsmetod
ArrayLength ArrayLength
Convert Convert
ConvertChecked ConvertChecked
Negate Negate
NegateChecked NegateChecked
Not Not
Quote Quote
TypeAs TypeAs
UnaryPlus UnaryPlus

Dessutom kan metoderna MakeUnary också användas för att skapa en UnaryExpression. Dessa fabriksmetoder kan användas för att skapa en UnaryExpression nodtyp som representerar en unary-åtgärd. Parametern för dessa metoder som är av typen NodeType anger önskad nodtyp.

Egenskaper

Name Description
CanReduce

Hämtar ett värde som anger om uttrycksträdnoden kan minskas.

IsLifted

Hämtar ett värde som anger om uttrycksträdnoden representerar ett lyft anrop till en operator.

IsLiftedToNull

Hämtar ett värde som anger om uttrycksträdnoden representerar ett lyft anrop till en operator vars returtyp lyfts till en nullbar typ.

Method

Hämtar implementeringsmetoden för unary-åtgärden.

NodeType

Returnerar nodtypen för den här Expression.

NodeType

Hämtar nodtypen för den här Expression.

(Ärvd från Expression)
Operand

Hämtar operand av unary operation.

Type

Hämtar den statiska typen av uttryck som detta Expression representerar.

Type

Hämtar den statiska typen av uttryck som detta Expression representerar.

(Ärvd från Expression)

Metoder

Name Description
Accept(ExpressionVisitor)

Skickar till den specifika besöksmetoden för den här nodtypen. Anropar MethodCallExpressionVisitMethodCall(MethodCallExpression)till exempel .

(Ärvd från Expression)
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
Reduce()

Minskar uttrycksnoden till ett enklare uttryck.

ReduceAndCheck()

Reducerar den här noden till ett enklare uttryck. Om CanReduce returnerar true bör detta returnera ett giltigt uttryck. Den här metoden kan returnera en annan nod som måste minskas.

(Ärvd från Expression)
ReduceExtensions()

Minskar uttrycket till en känd nodtyp (som inte är en tilläggsnod) eller returnerar bara uttrycket om det redan är en känd typ.

(Ärvd från Expression)
ToString()

Returnerar en textrepresentation av Expression.

(Ärvd från Expression)
Update(Expression)

Skapar ett nytt uttryck som liknar det här, men som använder de angivna underordnade uttrycken. Om alla underordnade är likadana returneras det här uttrycket.

VisitChildren(ExpressionVisitor)

Minskar noden och anropar sedan besökarens ombud för det reducerade uttrycket. Metoden genererar ett undantag om noden inte är redukterbar.

(Ärvd från Expression)

Gäller för