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 que tem 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 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 tipo de nó específico.
| NodeType | Método de Fábrica |
|---|---|
| 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 tipo de nó que represente uma operação unária. O parâmetro desses métodos, que é do tipo NodeType, especifica o tipo de nó desejado.
Propriedades
| Nome | Description |
|---|---|
| CanReduce |
Obtém um valor que indica se o nó da árvore de expressão pode ser reduzido. |
| IsLifted |
Obtém um valor que indica se o nó da árvore de expressão representa uma chamada levantada para um operador. |
| IsLiftedToNull |
Obtém um valor que indica se o nó da árvore de expressão representa uma chamada levantada para um operador cujo tipo de retorno é elevado para um tipo anulável. |
| 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 isso Expression representa. |
| Type |
Obtém o tipo estático da expressão que isso Expression representa. (Herdado de Expression) |
Métodos
| Nome | Description |
|---|---|
| Accept(ExpressionVisitor) |
Envia para o método de visita específico 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 Objectatual. (Herdado de Object) |
| Reduce() |
Reduz o nó de expressão a uma expressão mais simples. |
| ReduceAndCheck() |
Reduz esse nó a uma expressão mais simples. Se CanReduce retornar true, isso deverá retornar uma expressão válida. Esse método pode retornar outro nó que deve 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 já for um tipo conhecido. (Herdado de Expression) |
| ToString() |
Retorna uma representação textual do Expression. (Herdado de Expression) |
| Update(Expression) |
Cria uma nova expressão semelhante a esta, mas usando os filhos fornecidos. Se todas as crianças forem iguais, ela retornará essa expressão. |
| VisitChildren(ExpressionVisitor) |
Reduz o nó e, em seguida, chama o delegado visitante na expressão reduzida. O método gerará uma exceção se o nó não for reduível. (Herdado de Expression) |