Expression.LessThanOrEqual Método

Definición

Crea un objeto BinaryExpression que representa una comparación numérica "menor o igual que".

Sobrecargas

LessThanOrEqual(Expression, Expression)

Crea un objeto BinaryExpression que representa una comparación numérica "menor o igual que".

LessThanOrEqual(Expression, Expression, Boolean, MethodInfo)

Crea un objeto BinaryExpression que representa una comparación numérica "menor o igual que".

LessThanOrEqual(Expression, Expression)

Crea un objeto BinaryExpression que representa una comparación numérica "menor o igual que".

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

Parámetros

left
Expression

Objeto Expression en el que se va a establecer la propiedad Left.

right
Expression

Objeto Expression en el que se va a establecer la propiedad Right.

Devoluciones

BinaryExpression

BinaryExpression cuya propiedad NodeType es LessThanOrEqual y cuyas propiedades Left y Right se establecen en los valores especificados.

Excepciones

left o right es null.

No hay ningún operador "menor o igual que" definido para left.Type y right.Type.

Ejemplos

En el ejemplo de código siguiente se muestra cómo crear una expresión que compare dos enteros.

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

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

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

// This code example produces the following output:
//
// (42 <= 45)
// True
' 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 lessThanOrEqual As Expression = Expression.LessThanOrEqual(
     Expression.Constant(42),
     Expression.Constant(45)
 )

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

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

' This code example produces the following output:
'
' (42 <= 45)
' True

Comentarios

El resultado BinaryExpression tiene la Method propiedad establecida en el método de implementación. La Type propiedad se establece en el tipo del nodo. Si se levanta el nodo, la IsLifted propiedad es true. De lo contrario, es false. La propiedad IsLiftedToNull es siempre false. La propiedad Conversion es null.

En la siguiente información se describe el método de implementación, el tipo de nodo y si se levanta un nodo.

Método de implementación

Las reglas siguientes determinan el método de implementación para la operación:

  • Si la Type propiedad de o left right representa un tipo definido por el usuario que sobrecarga el operador "menor o igual", el MethodInfo que representa ese método es el método de implementación.

  • De lo contrario, si leftes . Escriba y right. El tipo son tipos numéricos, el método de implementación es null.

Tipo de nodo y elevación frente a no elevado

Si el método de implementación no nulles :

  • Si leftes . Escriba y right. El tipo se puede asignar a los tipos de argumento correspondientes del método de implementación, el nodo no se levanta. El tipo del nodo es el tipo de valor devuelto del método de implementación.

  • Si se cumplen las dos condiciones siguientes, el nodo se levanta y el tipo del nodo es Boolean:

    • left. Escriba y right. El tipo son tipos de valor de los que al menos uno acepta valores NULL y los tipos no que aceptan valores NULL correspondientes son iguales a los tipos de argumento correspondientes del método de implementación.

    • El tipo de valor devuelto del método de implementación es Boolean.

Si el método de implementación es null:

  • Si leftes . Escriba y right. El tipo no acepta valores NULL, el nodo no se levanta. El tipo del nodo es Boolean.

  • Si leftes . Escriba y right. El tipo admite valores NULL y se levanta el nodo. El tipo del nodo es Boolean.

Se aplica a

LessThanOrEqual(Expression, Expression, Boolean, MethodInfo)

Crea un objeto BinaryExpression que representa una comparación numérica "menor o igual que".

public:
 static System::Linq::Expressions::BinaryExpression ^ LessThanOrEqual(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, bool liftToNull, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression LessThanOrEqual (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, bool liftToNull, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression LessThanOrEqual (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, bool liftToNull, System.Reflection.MethodInfo? method);
static member LessThanOrEqual : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * bool * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function LessThanOrEqual (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.

right
Expression

Objeto Expression en el que se va a establecer la propiedad Right.

liftToNull
Boolean

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

method
MethodInfo

MethodInfo en el que se va a establecer la propiedad Method.

Devoluciones

BinaryExpression

BinaryExpression cuya propiedad NodeType es LessThanOrEqual y Left, Right, IsLiftedToNull y Method se establecen en los valores especificados.

Excepciones

left o right es 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 es null y no hay ningún operador "menor o igual que" definido para left.Type y right.Type.

Comentarios

El resultado BinaryExpression tiene la Method propiedad establecida en el método de implementación. La Type propiedad se establece en el tipo del nodo. Si se levanta el nodo, la IsLifted propiedad es true y la IsLiftedToNull propiedad es igual a liftToNull. De lo contrario, son ambos false. La propiedad Conversion es null.

En la siguiente información se describe el método de implementación, el tipo de nodo y si se levanta un nodo.

Método de implementación

Las reglas siguientes determinan el método de implementación para la operación:

  • Si method no null es y representa un método no void( static``Shared en Visual Basic) que toma dos argumentos, es el método de implementación.

  • De lo contrario, si la Type propiedad de left o right representa un tipo definido por el usuario que sobrecarga el operador "menor o igual", el MethodInfo que representa ese método es el método de implementación.

  • De lo contrario, si leftes . Escriba y right. El tipo son tipos numéricos, el método de implementación es null.

Tipo de nodo y elevación frente a no elevado

Si el método de implementación no nulles :

  • Si leftes . Escriba y right. El tipo se puede asignar a los tipos de argumento correspondientes del método de implementación, el nodo no se levanta. El tipo del nodo es el tipo de valor devuelto del método de implementación.

  • Si se cumplen las dos condiciones siguientes, se levanta el nodo; además, el tipo del nodo acepta valores NULL Boolean si liftToNull es true o Boolean si liftToNull es false:

    • left. Escriba y right. El tipo son tipos de valor de los que al menos uno acepta valores NULL y los tipos no que aceptan valores NULL correspondientes son iguales a los tipos de argumento correspondientes del método de implementación.

    • El tipo de valor devuelto del método de implementación es Boolean.

Si el método de implementación es null:

  • Si leftes . Escriba y right. El tipo no acepta valores NULL, el nodo no se levanta. El tipo del nodo es Boolean.

  • Si leftes . Escriba y right. El tipo admite valores NULL y se levanta el nodo. El tipo del nodo acepta valores NULL Boolean si liftToNull es true o Boolean si liftToNull es false.

Se aplica a