Expression.GreaterThanOrEqual Método

Definición

Crea un objeto BinaryExpression que representa una comparación numérica "mayor o igual que".Creates a BinaryExpression that represents a "greater than or equal" numeric comparison.

Sobrecargas

GreaterThanOrEqual(Expression, Expression)

Crea un objeto BinaryExpression que representa una comparación numérica "mayor o igual que".Creates a BinaryExpression that represents a "greater than or equal" numeric comparison.

GreaterThanOrEqual(Expression, Expression, Boolean, MethodInfo)

Crea un objeto BinaryExpression que representa una comparación numérica "mayor o igual que".Creates a BinaryExpression that represents a "greater than or equal" numeric comparison.

GreaterThanOrEqual(Expression, Expression)

Crea un objeto BinaryExpression que representa una comparación numérica "mayor o igual que".Creates a BinaryExpression that represents a "greater than or equal" numeric comparison.

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

Parámetros

left
Expression

Objeto Expression en el que se va a establecer la propiedad Left.An Expression to set the Left property equal to.

right
Expression

Objeto Expression en el que se va a establecer la propiedad Right.An Expression to set the Right property equal to.

Devoluciones

BinaryExpression

BinaryExpression cuya propiedad NodeType es GreaterThanOrEqual y cuyas propiedades Left y Right se establecen en los valores especificados.A BinaryExpression that has the NodeType property equal to GreaterThanOrEqual and the Left and Right properties set to the specified values.

Excepciones

left o right es null.left or right is null.

No hay ningún operador "mayor o igual que" definido para left.Type y right.Type.The "greater than or equal" operator is not defined for left.Type and right.Type.

Ejemplos

En el ejemplo de código siguiente se muestra cómo crear una expresión que compara dos enteros.The following code example shows how to create an expression that compares two integers.

// 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 greaterThanOrEqual = Expression.GreaterThanOrEqual(
    Expression.Constant(42),
    Expression.Constant(45)
);

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

// The following statement first creates an expression tree,
// then compiles it, and then executes it.
Console.WriteLine(Expression.Lambda<Func<bool>>(greaterThanOrEqual).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 greaterThanOrEqual As Expression = Expression.GreaterThanOrEqual(
     Expression.Constant(42),
     Expression.Constant(45)
 )

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

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

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

Comentarios

El resultante BinaryExpression tiene la Method propiedad establecida en el método de implementación.The resulting BinaryExpression has the Method property set to the implementing method. La Type propiedad se establece en el tipo del nodo.The Type property is set to the type of the node. Si se eleva el nodo, la IsLifted propiedad es true .If the node is lifted, the IsLifted property is true. De lo contrario, es false.Otherwise, it is false. La propiedad IsLiftedToNull es siempre false.The IsLiftedToNull property is always false. La propiedad Conversion es null.The Conversion property is null.

La siguiente información describe el método de implementación, el tipo de nodo y si se eleva un nodo.The following information describes the implementing method, the node type, and whether a node is lifted.

Método de implementaciónImplementing Method

Las siguientes reglas determinan el método de implementación de la operación:The following rules determine the implementing method for the operation:

  • Si la Type propiedad de left o right representa un tipo definido por el usuario que sobrecarga el operador "mayor o igual que", el MethodInfo que representa ese método es el método de implementación.If the Type property of either left or right represents a user-defined type that overloads the "greater than or equal" operator, the MethodInfo that represents that method is the implementing method.

  • De lo contrario, si es left . Escriba y right . El tipo son tipos numéricos, el método de implementación es null .Otherwise, if left.Type and right.Type are numeric types, the implementing method is null.

Tipo de nodo y elevación frente a sin elevaciónNode Type and Lifted versus Non-Lifted

Si el método de implementación no es null :If the implementing method is not null:

  • Si left . Escriba y right . Type se puede asignar a los tipos de argumento correspondientes del método de implementación, el nodo no se eleva.If left.Type and right.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. El tipo del nodo es el tipo de valor devuelto del método de implementación.The type of the node is the return type of the implementing method.

  • Si se cumplen las dos condiciones siguientes, el nodo se eleva y el tipo del nodo es Boolean :If the following two conditions are satisfied, the node is lifted and the type of the node is Boolean:

    • left. Escriba y right . Type son tipos de valor de los que al menos uno admite valores NULL y los tipos correspondientes que no aceptan valores NULL son iguales a los tipos de argumento correspondientes del método de implementación.left.Type and right.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method.

    • El tipo de valor devuelto del método de implementación es Boolean .The return type of the implementing method is Boolean.

Si el método de implementación es null :If the implementing method is null:

  • Si left . Escriba y right . El tipo no admite valores NULL, el nodo no se eleva.If left.Type and right.Type are both non-nullable, the node is not lifted. El tipo del nodo es Boolean .The type of the node is Boolean.

  • Si left . Escriba y right . El tipo admite valores NULL, el nodo se eleva.If left.Type and right.Type are both nullable, the node is lifted. El tipo del nodo es Boolean .The type of the node is Boolean.

Se aplica a

GreaterThanOrEqual(Expression, Expression, Boolean, MethodInfo)

Crea un objeto BinaryExpression que representa una comparación numérica "mayor o igual que".Creates a BinaryExpression that represents a "greater than or equal" numeric comparison.

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

Parámetros

left
Expression

Objeto Expression en el que se va a establecer la propiedad Left.An Expression to set the Left property equal to.

right
Expression

Objeto Expression en el que se va a establecer la propiedad Right.An Expression to set the Right property equal to.

liftToNull
Boolean

Es true para establecer IsLiftedToNull en true; es false para establecer IsLiftedToNull en false.true to set IsLiftedToNull to true; false to set IsLiftedToNull to false.

method
MethodInfo

MethodInfo en el que se va a establecer la propiedad Method.A MethodInfo to set the Method property equal to.

Devoluciones

BinaryExpression

BinaryExpression cuya propiedad NodeType es GreaterThanOrEqual y Left, Right, IsLiftedToNull y Method se establecen en los valores especificados.A BinaryExpression that has the NodeType property equal to GreaterThanOrEqual and the Left, Right, IsLiftedToNull, and Method properties set to the specified values.

Excepciones

left o right es null.left or right is null.

method no es null y el método que representa devuelve void, no es static (Shared en Visual Basic) o no toma exactamente dos argumentos.method is not null and the method it represents returns void, is not static (Shared in Visual Basic), or does not take exactly two arguments.

method es null y el operador "mayor o igual que" no está definido para left.Type y right.Type.method is null and the "greater than or equal" operator is not defined for left.Type and right.Type.

Comentarios

El resultante BinaryExpression tiene la Method propiedad establecida en el método de implementación.The resulting BinaryExpression has the Method property set to the implementing method. La Type propiedad se establece en el tipo del nodo.The Type property is set to the type of the node. Si se eleva el nodo, la IsLifted propiedad es true y la IsLiftedToNull propiedad es igual a liftToNull .If the node is lifted, the IsLifted property is true and the IsLiftedToNull property is equal to liftToNull. De lo contrario, son ambos false .Otherwise, they are both false. La propiedad Conversion es null.The Conversion property is null.

La siguiente información describe el método de implementación, el tipo de nodo y si se eleva un nodo.The following information describes the implementing method, the node type, and whether a node is lifted.

Método de implementaciónImplementing Method

Las siguientes reglas determinan el método de implementación de la operación:The following rules determine the implementing method for the operation:

  • Si method no es null y representa un método no vacío, static ( Shared en Visual Basic) que toma dos argumentos, es el método de implementación.If method is not null and it represents a non-void, static (Shared in Visual Basic) method that takes two arguments, it is the implementing method.

  • De lo contrario, si la Type propiedad de left o right representa un tipo definido por el usuario que sobrecarga el operador "mayor o igual que", el MethodInfo que representa ese método es el método de implementación.Otherwise, if the Type property of either left or right represents a user-defined type that overloads the "greater than or equal" operator, the MethodInfo that represents that method is the implementing method.

  • De lo contrario, si es left . Escriba y right . El tipo son tipos numéricos, el método de implementación es null .Otherwise, if left.Type and right.Type are numeric types, the implementing method is null.

Tipo de nodo y elevación frente a sin elevaciónNode Type and Lifted versus Non-Lifted

Si el método de implementación no es null :If the implementing method is not null:

  • Si left . Escriba y right . Type se puede asignar a los tipos de argumento correspondientes del método de implementación, el nodo no se eleva.If left.Type and right.Type are assignable to the corresponding argument types of the implementing method, the node is not lifted. El tipo del nodo es el tipo de valor devuelto del método de implementación.The type of the node is the return type of the implementing method.

  • Si se cumplen las dos condiciones siguientes, se eleva el nodo; Además, el tipo del nodo admite valores NULL Boolean si liftToNull es true o Boolean si liftToNull es false :If the following two conditions are satisfied, the node is lifted; also, the type of the node is nullable Boolean if liftToNull is true or Boolean if liftToNull is false:

    • left. Escriba y right . Type son tipos de valor de los que al menos uno admite valores NULL y los tipos correspondientes que no aceptan valores NULL son iguales a los tipos de argumento correspondientes del método de implementación.left.Type and right.Type are both value types of which at least one is nullable and the corresponding non-nullable types are equal to the corresponding argument types of the implementing method.

    • El tipo de valor devuelto del método de implementación es Boolean .The return type of the implementing method is Boolean.

Si el método de implementación es null :If the implementing method is null:

  • Si left . Escriba y right . El tipo no admite valores NULL, el nodo no se eleva.If left.Type and right.Type are both non-nullable, the node is not lifted. El tipo del nodo es Boolean .The type of the node is Boolean.

  • Si left . Escriba y right . El tipo admite valores NULL, el nodo se eleva.If left.Type and right.Type are both nullable, the node is lifted. El tipo del nodo admite valores NULL Boolean si liftToNull es true o Boolean si liftToNull es false .The type of the node is nullable Boolean if liftToNull is true or Boolean if liftToNull is false.

Se aplica a