Udostępnij za pośrednictwem


UnaryExpression Klasa

Definicja

Reprezentuje wyrażenie z operatorem jednoargumentowym.

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

Przykłady

Poniższy przykład tworzy obiekt, który reprezentuje konwersję UnaryExpression odwołania wyrażenia liczb całkowitych bez wartości null do typu liczb całkowitych dopuszczających wartość 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)

Uwagi

W poniższej tabeli przedstawiono podsumowanie metod fabryki, których można użyć do utworzenia UnaryExpression określonego typu węzła.

NodeType Factory, metoda
ArrayLength ArrayLength
Convert Convert
ConvertChecked ConvertChecked
Negate Negate
NegateChecked NegateChecked
Not Not
Quote Quote
TypeAs TypeAs
UnaryPlus UnaryPlus

Ponadto MakeUnary metody można również użyć do utworzenia elementu UnaryExpression. Te metody fabryki mogą służyć do tworzenia UnaryExpression dowolnego typu węzła, który reprezentuje operację jednoargumentową. Parametr tych metod, które są typu NodeType , określa żądany typ węzła.

Właściwości

CanReduce

Pobiera wartość wskazującą, czy można zmniejszyć węzeł drzewa wyrażeń.

CanReduce

Wskazuje, że węzeł można zmniejszyć do prostszego węzła. Jeśli zwraca wartość true, funkcja Reduce() może zostać wywołana w celu utworzenia skróconej postaci.

(Odziedziczone po Expression)
IsLifted

Pobiera wartość wskazującą, czy węzeł drzewa wyrażeń reprezentuje zniesione wywołanie operatora.

IsLiftedToNull

Pobiera wartość wskazującą, czy węzeł drzewa wyrażeń reprezentuje zniesione wywołanie operatora, którego typ zwracany jest podniesiony do typu dopuszczalnego wartości null.

Method

Pobiera metodę implementowania dla operacji jednoargumentowej.

NodeType

Zwraca typ węzła tego Expressionelementu .

NodeType

Pobiera typ węzła tego Expressionelementu .

(Odziedziczone po Expression)
Operand

Pobiera operand operacji jednoargumentowej.

Type

Pobiera statyczny typ wyrażenia, które Expression reprezentuje.

Type

Pobiera statyczny typ wyrażenia, które Expression reprezentuje.

(Odziedziczone po Expression)

Metody

Accept(ExpressionVisitor)

Wysyła do określonej metody wizyty dla tego typu węzła. Na przykład MethodCallExpression wywołuje element VisitMethodCall(MethodCallExpression).

(Odziedziczone po Expression)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
Reduce()

Zmniejsza węzeł wyrażenia do prostszego wyrażenia.

Reduce()

Zmniejsza ten węzeł do prostszego wyrażenia. Jeśli funkcja CanReduce zwróci wartość true, powinna zwrócić prawidłowe wyrażenie. Ta metoda może zwrócić inny węzeł, który musi zostać zmniejszony.

(Odziedziczone po Expression)
ReduceAndCheck()

Zmniejsza ten węzeł do prostszego wyrażenia. Jeśli funkcja CanReduce zwróci wartość true, powinna zwrócić prawidłowe wyrażenie. Ta metoda może zwrócić inny węzeł, który musi zostać zmniejszony.

(Odziedziczone po Expression)
ReduceExtensions()

Zmniejsza wyrażenie do znanego typu węzła (który nie jest węzłem rozszerzenia) lub po prostu zwraca wyrażenie, jeśli jest już znanym typem.

(Odziedziczone po Expression)
ToString()

Zwraca tekstową reprezentację obiektu Expression.

(Odziedziczone po Expression)
Update(Expression)

Tworzy nowe wyrażenie, które jest podobne do tego, ale przy użyciu dostarczonych elementów podrzędnych. Jeśli wszystkie elementy podrzędne są takie same, zwróci to wyrażenie.

VisitChildren(ExpressionVisitor)

Zmniejsza węzeł, a następnie wywołuje delegata gościa w wyrażeniu zredukowanym. Metoda zgłasza wyjątek, jeśli węzeł nie jest reducible.

(Odziedziczone po Expression)

Dotyczy