UnaryExpression Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa uma expressão com um operador unário.
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
- Herança
Exemplos
O exemplo a seguir cria um UnaryExpression objeto que representa a conversão de referência de uma expressão de inteiro não anulável para o tipo inteiro anulável.
// 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)
Comentários
A tabela a seguir resume os métodos de fábrica que podem ser usados para criar um UnaryExpression que tenha um tipo de nó específico.
NodeType | Método Factory |
---|---|
ArrayLength | ArrayLength |
Convert | Convert |
ConvertChecked | ConvertChecked |
Negate | Negate |
NegateChecked | NegateChecked |
Not | Not |
Quote | Quote |
TypeAs | TypeAs |
UnaryPlus | UnaryPlus |
Além disso, os MakeUnary métodos também podem ser usados para criar um UnaryExpression. Esses métodos de fábrica podem ser usados para criar um UnaryExpression de qualquer tipo de nó que represente uma operação unária. O parâmetro desses métodos do tipo NodeType especifica o tipo de nó desejado.
Propriedades
CanReduce |
Obtém um valor que indica se o nó da árvore de expressão pode ser reduzido. |
CanReduce |
Indica que o nó pode ser reduzido a um nó mais simples. Se isso retornar verdadeiro, Reduce() poderá ser chamado para produzir a forma reduzida. (Herdado de Expression) |
IsLifted |
Obtém um valor que indica se o nó da árvore de expressão representa uma chamada cancelada a um operador. |
IsLiftedToNull |
Obtém um valor que indica se o nó da árvore de expressão representa uma chamada cancelada a um operador cujo tipo de retorno é elevado para um tipo que permite valor nulo. |
Method |
Obtém o método de implementação para a operação unária. |
NodeType |
Retorna o tipo de nó deste Expression. |
NodeType |
Obtém o tipo de nó deste Expression. (Herdado de Expression) |
Operand |
Obtém o operando da operação unária. |
Type |
Obtém o tipo estático da expressão que esse Expression representa. |
Type |
Obtém o tipo estático da expressão que esse Expression representa. (Herdado de Expression) |
Métodos
Accept(ExpressionVisitor) |
Expede o método específico de visita para esse tipo de nó. Por exemplo, MethodCallExpression chama o VisitMethodCall(MethodCallExpression). (Herdado de Expression) |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
Reduce() |
Reduz o nó de expressão para uma expressão mais simples. |
Reduce() |
Reduz esse nó a uma expressão mais simples. Se CanReduce retornar true, ele deverá retornar uma expressão válida. Esse método pode retornar outro nó que também precisa ser reduzido. (Herdado de Expression) |
ReduceAndCheck() |
Reduz esse nó a uma expressão mais simples. Se CanReduce retornar true, ele deverá retornar uma expressão válida. Esse método pode retornar outro nó que também precisa ser reduzido. (Herdado de Expression) |
ReduceExtensions() |
Reduz a expressão a um tipo de nó conhecido (que não é um nó de extensão) ou apenas retorna a expressão se ele já é um tipo conhecido. (Herdado de Expression) |
ToString() |
Retorna uma representação textual de Expression. (Herdado de Expression) |
Update(Expression) |
Cria uma nova expressão que é parecida com esta, mas usando os filhos fornecidos. Se todos os filhos forem os mesmos, ela retornará esta expressão. |
VisitChildren(ExpressionVisitor) |
Reduz o nó e, em seguida, chama o delegado visitante na expressão reduzida. O método gera uma exceção se o nó não é reduzível. (Herdado de Expression) |