Поделиться через


Expression.LessThanOrEqual Метод

Определение

Создает BinaryExpression, представляющую "меньше или равно" числовое сравнение.

Перегрузки

LessThanOrEqual(Expression, Expression)

Создает BinaryExpression, представляющую "меньше или равно" числовое сравнение.

LessThanOrEqual(Expression, Expression, Boolean, MethodInfo)

Создает BinaryExpression, представляющий "меньше или равно" числовое сравнение.

LessThanOrEqual(Expression, Expression)

Исходный код:
BinaryExpression.cs
Исходный код:
BinaryExpression.cs
Исходный код:
BinaryExpression.cs

Создает BinaryExpression, представляющую "меньше или равно" числовое сравнение.

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

Параметры

left
Expression

Значение Expression для задания свойства Left равным.

right
Expression

Значение Expression для задания свойства Right равным.

Возвращаемое значение

BinaryExpression с свойством NodeType равным LessThanOrEqual, а свойства Left и Right заданы заданным значениям.

Исключения

left или rightnull.

Оператор "меньше или равно" не определен для left. Тип и right. Тип.

Примеры

В следующем примере кода показано, как создать выражение, которое сравнивает два целых числа.

// 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

Комментарии

Результирующий BinaryExpression имеет свойство Method для метода реализации. Свойство Type имеет тип узла. Если узел снят, свойство IsLiftedtrue. В противном случае это false. Свойство IsLiftedToNull всегда false. Свойство Conversionnull.

Ниже приведены сведения о методе реализации, типе узла и о том, будет ли снят узел.

Реализация метода

Следующие правила определяют метод реализации для операции:

  • Если свойство Type либо left, либо right представляет определяемый пользователем тип, который перегружает оператор "меньше или равно", MethodInfo, представляющий этот метод, является методом реализации.

  • В противном случае, если left. Тип и right. Тип — числовые типы, реализация метода null.

Тип узла и снятый и не поднимаемый

Если метод реализации не null:

  • Если left. Тип и right. Тип можно назначить соответствующим типам аргументов метода реализации, узел не поднимается. Тип узла — это возвращаемый тип метода реализации.

  • Если выполнены следующие два условия, узел поднимается и тип узла Boolean:

    • left. Тип и right. Тип — это оба типа значений, для которых по крайней мере один имеет значение NULL, и соответствующие типы, не допускающие значения NULL, равны соответствующим типам аргументов метода реализации.

    • Возвращаемый тип метода реализации — Boolean.

Если метод реализации null:

  • Если left. Тип и right. Тип не допускает значение NULL, узел не поднимается. Тип узла — Boolean.

  • Если left. Тип и right. Тип имеет значение NULL, узел поднимается. Тип узла — Boolean.

Применяется к

LessThanOrEqual(Expression, Expression, Boolean, MethodInfo)

Исходный код:
BinaryExpression.cs
Исходный код:
BinaryExpression.cs
Исходный код:
BinaryExpression.cs

Создает BinaryExpression, представляющий "меньше или равно" числовое сравнение.

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

Параметры

left
Expression

Значение Expression для задания свойства Left равным.

right
Expression

Значение Expression для задания свойства Right равным.

liftToNull
Boolean

true, чтобы задать IsLiftedToNull значение true; false, чтобы задать IsLiftedToNull значение false.

method
MethodInfo

Значение MethodInfo для задания свойства Method равным.

Возвращаемое значение

BinaryExpression с свойством NodeType, равным LessThanOrEqual и Left, Right, IsLiftedToNullи свойствам Method, заданным указанными значениями.

Исключения

left или rightnull.

method не null и метод, который он представляет, возвращает void, не static (Shared в Visual Basic) или не принимает ровно два аргумента.

method null, а оператор "меньше или равно" не определен для left. Тип и right. Тип.

Комментарии

Результирующий BinaryExpression имеет свойство Method для метода реализации. Свойство Type имеет тип узла. Если узел снят, свойство IsLiftedtrue, а свойство IsLiftedToNull равно liftToNull. В противном случае они оба false. Свойство Conversionnull.

Ниже приведены сведения о методе реализации, типе узла и о том, будет ли снят узел.

Реализация метода

Следующие правила определяют метод реализации для операции:

  • Если method не null и представляет непустый метод static (Shared в Visual Basic), который принимает два аргумента, это метод реализации.

  • В противном случае, если свойство Typeleft или right представляет определяемый пользователем тип, который перегружает оператор "меньше или равно", MethodInfo, представляющее этот метод, является методом реализации.

  • В противном случае, если left. Тип и right. Тип — числовые типы, реализация метода null.

Тип узла и снятый и не поднимаемый

Если метод реализации не null:

  • Если left. Тип и right. Тип можно назначить соответствующим типам аргументов метода реализации, узел не поднимается. Тип узла — это возвращаемый тип метода реализации.

  • Если выполнены следующие два условия, узел поднимается; Кроме того, тип узла имеет значение NULL Boolean, если liftToNulltrue или Boolean, если liftToNullfalse:

    • left. Тип и right. Тип — это оба типа значений, для которых по крайней мере один имеет значение NULL, и соответствующие типы, не допускающие значения NULL, равны соответствующим типам аргументов метода реализации.

    • Возвращаемый тип метода реализации — Boolean.

Если метод реализации null:

  • Если left. Тип и right. Тип не допускает значение NULL, узел не поднимается. Тип узла — Boolean.

  • Если left. Тип и right. Тип имеет значение NULL, узел поднимается. Тип узла имеет значение NULL Boolean, если liftToNulltrue или Boolean, если liftToNullfalse.

Применяется к