Condividi tramite


Expression.UnaryPlus Metodo

Definizione

Crea un oggetto UnaryExpression che rappresenta un'operazione con il più unario.

Overload

UnaryPlus(Expression, MethodInfo)

Crea un oggetto UnaryExpression che rappresenta un'operazione con il più unario.

UnaryPlus(Expression)

Crea un oggetto UnaryExpression che rappresenta un'operazione con il più unario.

UnaryPlus(Expression, MethodInfo)

Origine:
UnaryExpression.cs
Origine:
UnaryExpression.cs
Origine:
UnaryExpression.cs

Crea un oggetto UnaryExpression che rappresenta un'operazione con il più unario.

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);
public static System.Linq.Expressions.UnaryExpression UnaryPlus (System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo? method);
static member UnaryPlus : System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.UnaryExpression
Public Shared Function UnaryPlus (expression As Expression, method As MethodInfo) As UnaryExpression

Parametri

expression
Expression

Oggetto Expression su cui impostare la proprietà Operand.

method
MethodInfo

Oggetto MethodInfo su cui impostare la proprietà Method.

Restituisce

Oggetto UnaryExpression la cui proprietà NodeType è uguale a UnaryPlus e le cui proprietà Operand e Method sono impostate sui valori specificati.

Eccezioni

expression è null.

method non è null e il metodo che rappresenta restituisce void, non è static (Shared in Visual Basic) o non accetta esattamente un argomento.

method è null e l'operatore più unario non è definito per expression.Type.

-oppure-

expression.Type , o il tipo non nullable corrispondente se si tratta di un tipo nullable, non è assegnabile al tipo di argomento del metodo rappresentato da method.

Commenti

La Method proprietà del risultato UnaryExpression è impostata sul metodo di implementazione. La Type proprietà è impostata sul tipo del nodo. Se il nodo viene sollevato, le IsLifted proprietà e IsLiftedToNull sono entrambe true. In caso contrario, sono false.

Metodo di implementazione

Le regole seguenti determinano il metodo di implementazione per l'operazione:

  • Se method non null è e rappresenta un metodo non void, static (Shared in Visual Basic) che accetta un argomento, è il metodo di implementazione per il nodo.

  • Se expression. Il tipo è un tipo definito dall'utente che definisce l'operatore unary plus, che MethodInfo rappresenta tale operatore è il metodo di implementazione.

  • In caso contrario, se expression. Il tipo è un tipo numerico, il metodo di implementazione è null.

Tipo di nodo e lifting rispetto a non sollevato

Se il metodo di implementazione non nullè :

  • Se expression. Il tipo è assegnabile al tipo di argomento del metodo di implementazione, il nodo non viene sollevato. Il tipo del nodo è il tipo restituito del metodo di implementazione.

  • Se sono soddisfatte le due condizioni seguenti, il nodo viene sollevato e il tipo del nodo è il tipo nullable che corrisponde al tipo restituito del metodo di implementazione:

    • expression. Il tipo è un tipo valore nullable e il tipo di valore non nullable corrispondente è uguale al tipo di argomento del metodo di implementazione.

    • Il tipo restituito del metodo di implementazione è un tipo di valore non nullable.

Se il metodo di implementazione è null, il tipo del nodo è expression. Digitare. Se expression. Il tipo non è nullable, il nodo non viene sollevato. In caso contrario, il nodo viene sollevato.

Si applica a

UnaryPlus(Expression)

Origine:
UnaryExpression.cs
Origine:
UnaryExpression.cs
Origine:
UnaryExpression.cs

Crea un oggetto UnaryExpression che rappresenta un'operazione con il più unario.

public:
 static System::Linq::Expressions::UnaryExpression ^ UnaryPlus(System::Linq::Expressions::Expression ^ expression);
public static System.Linq.Expressions.UnaryExpression UnaryPlus (System.Linq.Expressions.Expression expression);
static member UnaryPlus : System.Linq.Expressions.Expression -> System.Linq.Expressions.UnaryExpression
Public Shared Function UnaryPlus (expression As Expression) As UnaryExpression

Parametri

expression
Expression

Oggetto Expression su cui impostare la proprietà Operand.

Restituisce

Oggetto UnaryExpression la cui proprietà NodeType è uguale a UnaryPlus e la cui proprietà Operand è impostata sul valore specificato.

Eccezioni

expression è null.

L'operatore più unario non è definito per expression.Type.

Commenti

La Method proprietà del risultato UnaryExpression è impostata sul metodo di implementazione. La Type proprietà è impostata sul tipo del nodo. Se il nodo viene sollevato, le IsLifted proprietà e IsLiftedToNull sono entrambe true. In caso contrario, sono false.

Metodo di implementazione

Le regole seguenti determinano il metodo di implementazione per l'operazione:

  • Se expression. Il tipo è un tipo definito dall'utente che definisce l'operatore unary plus, che MethodInfo rappresenta tale operatore è il metodo di implementazione.

  • In caso contrario, se expression. Il tipo è un tipo numerico, il metodo di implementazione è null.

Tipo di nodo e lifting rispetto a non sollevato

Se il metodo di implementazione non nullè :

  • Se expression. Il tipo è assegnabile al tipo di argomento del metodo di implementazione, il nodo non viene sollevato. Il tipo del nodo è il tipo restituito del metodo di implementazione.

  • Se sono soddisfatte le due condizioni seguenti, il nodo viene sollevato e il tipo del nodo è il tipo nullable che corrisponde al tipo restituito del metodo di implementazione:

    • expression. Il tipo è un tipo valore nullable e il tipo di valore non nullable corrispondente è uguale al tipo di argomento del metodo di implementazione.

    • Il tipo restituito del metodo di implementazione è un tipo di valore non nullable.

Se il metodo di implementazione è null, il tipo del nodo è expression. Digitare. Se expression. Il tipo non è nullable, il nodo non viene sollevato. In caso contrario, il nodo viene sollevato.

Si applica a