Expression.Coalesce Метод

Определение

Создает BinaryExpression, представляющий объединяющую операцию.Creates a BinaryExpression that represents a coalescing operation.

Перегрузки

Coalesce(Expression, Expression, LambdaExpression)

Создает BinaryExpression, представляющий объединяющую операцию, заданную функции преобразования.Creates a BinaryExpression that represents a coalescing operation, given a conversion function.

Coalesce(Expression, Expression)

Создает BinaryExpression, представляющий объединяющую операцию.Creates a BinaryExpression that represents a coalescing operation.

Coalesce(Expression, Expression, LambdaExpression)

Создает BinaryExpression, представляющий объединяющую операцию, заданную функции преобразования.Creates a BinaryExpression that represents a coalescing operation, given a conversion function.

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

Параметры

left
Expression

Объект Expression, который следует задать в качестве значения свойства Left.An Expression to set the Left property equal to.

right
Expression

Объект Expression, который следует задать в качестве значения свойства Right.An Expression to set the Right property equal to.

conversion
LambdaExpression

Объект LambdaExpression, который следует задать в качестве значения свойства Conversion.A LambdaExpression to set the Conversion property equal to.

Возвраты

Выражение BinaryExpression со свойством NodeType, равным Coalesce, и свойствами Left, Right и Conversion, для которых заданы указанные значения.A BinaryExpression that has the NodeType property equal to Coalesce and the Left, Right and Conversion properties set to the specified values.

Исключения

Значение параметра left или rightnull.left or right is null.

Типы left.Type и right.Type не преобразовываются друг в друга.left.Type and right.Type are not convertible to each other.

- или --or- conversion не является null, а тип conversion.Type является типом делегата, не принимающим ровно один аргумент.conversion is not null and conversion.Type is a delegate type that does not take exactly one argument.

Свойство Type параметра left не представляет тип ссылки или тип, поддерживающий значение null.The Type property of left does not represent a reference type or a nullable value type.

- или --or- Свойство Typeleft представляет тип, который не назначается для типа параметра типа делегата conversion.Type.The Type property of left represents a type that is not assignable to the parameter type of the delegate type conversion.Type.

- или --or- Свойство Typeright не равно типу возврата типа делегата conversion.Type.The Type property of right is not equal to the return type of the delegate type conversion.Type.

Комментарии

BinaryExpression null IsLifted Свойство полученного результата имеет значение, а для IsLiftedToNull обоихсвойстви—.false MethodThe Method property of the resulting BinaryExpression is null and both IsLifted and IsLiftedToNull are set to false.

Свойство результирующего BinaryExpression объекта равно типу результата операции объединения. TypeThe Type property of the resulting BinaryExpression is equal to the result type of the coalescing operation.

Тип результата определяется следующими правилами.The following rules determine the result type:

  • Если left. Тип представляет тип, допускающий rightзначение null, и. Тип является неявно преобразуемым в соответствующий тип, не допускающий значения NULL, тип результата является аналогом left, не допускающим значения NULL. Тип.If left.Type represents a nullable type and right.Type is implicitly convertible to the corresponding non-nullable type, the result type is the non-nullable equivalent of left.Type.

  • В противном rightслучае значение, если. Тип неявно преобразуется в left. Тип, тип результата — left. Тип.Otherwise, if right.Type is implicitly convertible to left.Type, the result type is left.Type.

  • В противном случае, если эквивалент метода leftне допускает значения NULL. Тип неявно преобразуется в right. Тип, тип результата — right. Тип.Otherwise, if the non-nullable equivalent of left.Type is implicitly convertible to right.Type, the result type is right.Type.

Coalesce(Expression, Expression)

Создает BinaryExpression, представляющий объединяющую операцию.Creates a BinaryExpression that represents a coalescing operation.

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

Параметры

left
Expression

Объект Expression, который следует задать в качестве значения свойства Left.An Expression to set the Left property equal to.

right
Expression

Объект Expression, который следует задать в качестве значения свойства Right.An Expression to set the Right property equal to.

Возвраты

Выражение BinaryExpression со свойствомNodeType, равным Coalesce, и свойствами Left и Right, для которых заданы указанные значения.A BinaryExpression that has the NodeType property equal to Coalesce and the Left and Right properties set to the specified values.

Исключения

Значение параметра left или rightnull.left or right is null.

Свойство Type параметра left не представляет тип ссылки или тип, поддерживающий значение null.The Type property of left does not represent a reference type or a nullable value type.

Типы left.Type и right.Type не преобразовываются друг в друга.left.Type and right.Type are not convertible to each other.

Комментарии

BinaryExpression null IsLifted Свойство полученного результата имеет значение, а для IsLiftedToNull обоихсвойстви—.false MethodThe Method property of the resulting BinaryExpression is null and both IsLifted and IsLiftedToNull are set to false. Type Свойство равно типу результата операции объединения.The Type property is equal to the result type of the coalescing operation. Значение свойства Conversionnull.The Conversion property is null.

Тип результатаResult Type

Тип результата определяется следующими правилами.The following rules determine the result type:

  • Если left. Тип представляет тип, допускающий rightзначение null, и. Тип является неявно преобразуемым в соответствующий тип, не допускающий значения NULL, тип результата является аналогом left, не допускающим значения NULL. Тип.If left.Type represents a nullable type and right.Type is implicitly convertible to the corresponding non-nullable type, the result type is the non-nullable equivalent of left.Type.

  • В противном rightслучае значение, если. Тип неявно преобразуется в left. Тип, тип результата — left. Тип.Otherwise, if right.Type is implicitly convertible to left.Type, the result type is left.Type.

  • В противном случае, если эквивалент метода leftне допускает значения NULL. Тип неявно преобразуется в right. Тип, тип результата — right. Тип.Otherwise, if the non-nullable equivalent of left.Type is implicitly convertible to right.Type, the result type is right.Type.

Дополнительно

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