Expression.UnaryPlus Метод

Определение

Создает UnaryExpression, представляющий операцию "унарный плюс".

Перегрузки

UnaryPlus(Expression, MethodInfo)

Создает UnaryExpression, представляющий операцию "унарный плюс".

UnaryPlus(Expression)

Создает UnaryExpression, представляющий операцию "унарный плюс".

UnaryPlus(Expression, MethodInfo)

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

Создает UnaryExpression, представляющий операцию "унарный плюс".

public static System.Linq.Expressions.UnaryExpression UnaryPlus (System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.UnaryExpression UnaryPlus (System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo? method);

Параметры

expression
Expression

Объект Expression, который следует задать в качестве значения свойства Operand.

method
MethodInfo

Объект MethodInfo, который следует задать в качестве значения свойства Method.

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

Выражение UnaryExpression со свойствомNodeType, равным UnaryPlus, и свойствами Operand и Method, для которых заданы указанные значения.

Исключения

expression имеет значение null.

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

method равно null, а оператор "Унарный плюс" не определен для типа expression.

-или-

Тип expression.Type (или соответствующий тип, не поддерживающий значение null, если он является типом, поддерживающим значение null) не назначается типу аргумента метода, представленного method.

Комментарии

Свойству Method результирующего UnaryExpression объекта присваивается реализующий метод. Свойству Type присваивается тип узла. Если узел приподнят, IsLifted свойства и IsLiftedToNull имеют значение true. В противном случае они имеют значение false.

Метод реализации

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

  • Если method параметр не null имеет и представляет метод non-void ( staticShared в Visual Basic), который принимает один аргумент, он является реализующим методом для узла.

  • Если expression. Тип — это определяемый пользователем тип, определяющий унарный оператор плюс, MethodInfo который представляет этот оператор, является реализующим методом.

  • В противном случае , если expression. Тип — это числовой тип, реализующий метод — null.

Тип узла, а также тип невозвыводимый и невозвыводимый

Если реализующим методом не nullявляется :

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

  • Если выполняются следующие два условия, узел поднимается, а тип узла является типом, допускающим значение NULL, который соответствует типу возвращаемого значения реализующего метода:

    • expression. Тип является типом значения, допускающим значение NULL, и соответствующий тип значения, не допускающий значения NULL, равен типу аргумента реализующего метода.

    • Тип возвращаемого значения реализующего метода является типом значения, не допускающим значение NULL.

Если реализующим методом является null, тип узла — expression. Тип. Если expression. Тип не допускает значения NULL, узел не поднимается. В противном случае узел приподнимается.

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

UnaryPlus(Expression)

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

Создает UnaryExpression, представляющий операцию "унарный плюс".

public static System.Linq.Expressions.UnaryExpression UnaryPlus (System.Linq.Expressions.Expression expression);

Параметры

expression
Expression

Объект Expression, который следует задать в качестве значения свойства Operand.

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

Выражение UnaryExpression со свойством NodeType, равным UnaryPlus, и свойством Operand, для которого задано указанное значение.

Исключения

expression имеет значение null.

Оператор "унарный плюс" не определен для типа expression.Type.

Комментарии

Свойству Method результирующего UnaryExpression объекта присваивается реализующий метод. Свойству Type присваивается тип узла. Если узел приподнят, IsLifted свойства и IsLiftedToNull имеют значение true. В противном случае они имеют значение false.

Метод реализации

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

  • Если expression. Тип — это определяемый пользователем тип, определяющий унарный оператор плюс, MethodInfo который представляет этот оператор, является реализующим методом.

  • В противном случае , если expression. Тип — это числовой тип, реализующий метод — null.

Тип узла, а также тип невозвыводимый и невозвыводимый

Если реализующим методом не nullявляется :

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

  • Если выполняются следующие два условия, узел поднимается, а тип узла является типом, допускающим значение NULL, который соответствует типу возвращаемого значения реализующего метода:

    • expression. Тип является типом значения, допускающим значение NULL, и соответствующий тип значения, не допускающий значения NULL, равен типу аргумента реализующего метода.

    • Тип возвращаемого значения реализующего метода является типом значения, не допускающим значение NULL.

Если реализующим методом является null, тип узла — expression. Тип. Если expression. Тип не допускает значения NULL, узел не поднимается. В противном случае узел приподнимается.

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