Partilhar via


Expression.GreaterThan Método

Definição

Cria um BinaryExpression que representa uma comparação numérica "maior que".

Sobrecargas

GreaterThan(Expression, Expression)

Cria um BinaryExpression que representa uma comparação numérica "maior que".

GreaterThan(Expression, Expression, Boolean, MethodInfo)

Cria um BinaryExpression que representa uma comparação numérica "maior que". O método de implementação pode ser especificado.

GreaterThan(Expression, Expression)

Origem:
BinaryExpression.cs
Origem:
BinaryExpression.cs
Origem:
BinaryExpression.cs

Cria um BinaryExpression que representa uma comparação numérica "maior que".

public:
 static System::Linq::Expressions::BinaryExpression ^ GreaterThan(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression GreaterThan (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member GreaterThan : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function GreaterThan (left As Expression, right As Expression) As BinaryExpression

Parâmetros

left
Expression

Um Expression para definir a propriedade Left igual a ele.

right
Expression

Um Expression para definir a propriedade Right igual a ele.

Retornos

Um BinaryExpression que tem a propriedade NodeType igual a GreaterThan e as propriedades Left e Right definidas com os valores especificados.

Exceções

left ou right é null.

O operador “maior que” não está definido para left.Type e right.Type.

Exemplos

O exemplo de código a seguir mostra como criar uma expressão que compara dois inteiros.

// Add the following directive to your file:
// using System.Linq.Expressions;

// This expression compares the values of its two arguments.
// Both arguments must be of the same type.
Expression greaterThanExpr = Expression.GreaterThan(
    Expression.Constant(42),
    Expression.Constant(45)
);

// Print out the expression.
Console.WriteLine(greaterThanExpr.ToString());

// The following statement first creates an expression tree,
// then compiles it, and then executes it.
Console.WriteLine(
    Expression.Lambda<Func<bool>>(greaterThanExpr).Compile()());

// This code example produces the following output:
//
// (42 > 45)
// False
' Add the following directive to your file:
' Imports System.Linq.Expressions 

' This expression compares the values of its two arguments.
' Both arguments must be of the same type.
Dim greaterThanExpr As Expression = Expression.GreaterThan(
    Expression.Constant(42),
    Expression.Constant(45)
)

' Print the expression.
Console.WriteLine(greaterThanExpr.ToString())

' The following statement first creates an expression tree,
' then compiles it, and then executes it.    
Console.WriteLine(
    Expression.Lambda(Of Func(Of Boolean))(greaterThanExpr).Compile()())

' This code example produces the following output:
'
' (42 > 45)
' False

Comentários

O resultante BinaryExpression tem a Method propriedade definida como o método de implementação. A Type propriedade é definida como o tipo do nó. Se o nó for levantado, a IsLifted propriedade será true. Caso contrário, será false. A propriedade IsLiftedToNull sempre é false. A propriedade Conversion é null.

As informações a seguir descrevem o método de implementação, o tipo de nó e se um nó é levantado.

Implementando método

As regras a seguir determinam o método de implementação para a operação:

  • Se a Type propriedade de left ou right representar um tipo definido pelo usuário que sobrecarrega o operador "maior que", o MethodInfo que representa esse método é o método de implementação.

  • Caso contrário, se left. Digite e right. Tipo são tipos numéricos, o método de implementação é null.

Tipo de nó e versão com comparação de precisão x sem comparação de precisão

Se o método de implementação não nullfor :

  • Se left. Digite e right. O tipo é atribuível aos tipos de argumento correspondentes do método de implementação, o nó não é levantado. O tipo do nó é o tipo de retorno do método de implementação.

  • Se as duas condições a seguir forem atendidas, o nó será levantado e o tipo do nó será Boolean:

    • left. Digite e right. Tipo são tipos de valor dos quais pelo menos um é anulável e os tipos não anuláveis correspondentes são iguais aos tipos de argumento correspondentes do método de implementação.

    • O tipo de retorno do método de implementação é Boolean.

Se o método de implementação for null:

  • Se left. Digite e right. O tipo não permite valor nulo, o nó não é levantado. O tipo do nó é Boolean.

  • Se left. Digite e right. O tipo é anulável, o nó é levantado. O tipo do nó é Boolean.

Aplica-se a

GreaterThan(Expression, Expression, Boolean, MethodInfo)

Origem:
BinaryExpression.cs
Origem:
BinaryExpression.cs
Origem:
BinaryExpression.cs

Cria um BinaryExpression que representa uma comparação numérica "maior que". O método de implementação pode ser especificado.

public:
 static System::Linq::Expressions::BinaryExpression ^ GreaterThan(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, bool liftToNull, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression GreaterThan (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, bool liftToNull, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression GreaterThan (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, bool liftToNull, System.Reflection.MethodInfo? method);
static member GreaterThan : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * bool * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function GreaterThan (left As Expression, right As Expression, liftToNull As Boolean, method As MethodInfo) As BinaryExpression

Parâmetros

left
Expression

Um Expression para definir a propriedade Left igual a ele.

right
Expression

Um Expression para definir a propriedade Right igual a ele.

liftToNull
Boolean

true para definir IsLiftedToNull como true; false para definir IsLiftedToNull como false.

method
MethodInfo

Um MethodInfo para definir a propriedade Method igual a ele.

Retornos

Um BinaryExpression que tem a propriedade NodeType igual a GreaterThan e as propriedades Left, Right, IsLiftedToNull e Method definidas com os valores especificados.

Exceções

left ou right é null.

method não é null e o método que ele representa retorna void, não é static (Shared no Visual Basic) ou não tem exatamente dois argumentos.

method é null e o operador "maior que" não foi definido para left.Type e right.Type.

Comentários

O resultante BinaryExpression tem a Method propriedade definida como o método de implementação. A Type propriedade é definida como o tipo do nó. Se o nó for levantado, a IsLifted propriedade será true e a IsLiftedToNull propriedade será igual a liftToNull. Caso contrário, ambos falsesão . A propriedade Conversion é null.

As informações a seguir descrevem o método de implementação, o tipo de nó e se um nó é levantado.

Implementando método

As regras a seguir determinam o método de implementação para a operação :

  • Se method não null for e representar um método não nulo, static (Shared no Visual Basic) que usa dois argumentos, é o método de implementação.

  • Caso contrário, se a Type propriedade de left ou right representar um tipo definido pelo usuário que sobrecarrega o operador "maior que", o MethodInfo que representa esse método é o método de implementação.

  • Caso contrário, se left. Digite e right. Tipo são tipos numéricos, o método de implementação é null.

Tipo de nó e versão com comparação de precisão x sem comparação de precisão

Se o método de implementação não nullfor :

  • Se left. Digite e right. O tipo é atribuível aos tipos de argumento correspondentes do método de implementação, o nó não é levantado. O tipo do nó é o tipo de retorno do método de implementação.

  • Se as duas condições a seguir forem atendidas, o nó será levantado; além disso, o tipo do nó será anulável Boolean se liftToNull for true ou Boolean se liftToNull for false:

    • left. Digite e right. Tipo são tipos de valor dos quais pelo menos um é anulável e os tipos não anuláveis correspondentes são iguais aos tipos de argumento correspondentes do método de implementação.

    • O tipo de retorno do método de implementação é Boolean.

Se o método de implementação for null:

  • Se left. Digite e right. O tipo não permite valor nulo, o nó não é levantado. O tipo do nó é Boolean.

  • Se left. Digite e right. O tipo é anulável, o nó é levantado. O tipo do nó será anulável Boolean se liftToNull for true ou Boolean se liftToNull for false.

Aplica-se a