Expression.NegateChecked Methode

Definitie

Hiermee maakt u een UnaryExpression bewerking voor rekenkundige negatie die overloopcontrole heeft.

Overloads

Name Description
NegateChecked(Expression)

Hiermee maakt u een UnaryExpression bewerking voor rekenkundige negatie die overloopcontrole heeft.

NegateChecked(Expression, MethodInfo)

Hiermee maakt u een UnaryExpression bewerking voor rekenkundige negatie die overloopcontrole heeft. De implementatiemethode kan worden opgegeven.

NegateChecked(Expression)

Hiermee maakt u een UnaryExpression bewerking voor rekenkundige negatie die overloopcontrole heeft.

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

Parameters

expression
Expression

Een Expression om de Operand eigenschap in te stellen die gelijk is aan.

Retouren

Een UnaryExpression met de NodeType eigenschap die gelijk is aan NegateChecked en de Operand eigenschap is ingesteld op de opgegeven waarde.

Uitzonderingen

expression is null.

De unaire min-operator is niet gedefinieerd voor expression. Type.

Opmerkingen

De Method eigenschap van het resultaat UnaryExpression wordt ingesteld op de implementatiemethode. De Type eigenschap is ingesteld op het type knooppunt. Als het knooppunt wordt opgeheven, zijn de IsLifted en IsLiftedToNull eigenschappen beide true. Anders zijn ze onwaar.

Implementatiemethode

De volgende regels bepalen de implementatiemethode voor de bewerking:

  • Als expression. Type is een door de gebruiker gedefinieerd type dat de unaire min-operator definieert, de MethodInfo operator die de implementatiemethode is.

  • Anders, als expression. Het type is een numeriek type, de implementatiemethode is null.

Type knooppunt en opgeheven versus niet-opgeheven

Als de implementatiemethode niet null is:

  • Als expression. Het type kan worden toegewezen aan het argumenttype van de implementatiemethode. Het knooppunt wordt niet opgeheven. Het type van het knooppunt is het retourtype van de implementatiemethode.

  • Als aan de volgende twee voorwaarden wordt voldaan, wordt het knooppunt opgeheven en is het type van het knooppunt het type null dat overeenkomt met het retourtype van de implementatiemethode:

    • expression. Het type is een type null-waarde en het bijbehorende niet-null-waardetype is gelijk aan het argumenttype van de implementatiemethode.

    • Het retourtype van de implementatiemethode is een niet-null-waardetype.

Als de implementatiemethode is null, is expressionhet type van het knooppunt. Type. Als expression. Het type kan niet null zijn, het knooppunt wordt niet opgeheven. Anders wordt het knooppunt opgeheven.

Van toepassing op

NegateChecked(Expression, MethodInfo)

Hiermee maakt u een UnaryExpression bewerking voor rekenkundige negatie die overloopcontrole heeft. De implementatiemethode kan worden opgegeven.

public:
 static System::Linq::Expressions::UnaryExpression ^ NegateChecked(System::Linq::Expressions::Expression ^ expression, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.UnaryExpression NegateChecked(System.Linq.Expressions.Expression expression, System.Reflection.MethodInfo method);
static member NegateChecked : System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.UnaryExpression
Public Shared Function NegateChecked (expression As Expression, method As MethodInfo) As UnaryExpression

Parameters

expression
Expression

Een Expression om de Operand eigenschap in te stellen die gelijk is aan.

method
MethodInfo

A MethodInfo om de Method eigenschap in te stellen die gelijk is aan.

Retouren

Een UnaryExpression met de NodeType eigenschap gelijk aan NegateChecked en de Operand eigenschappen die Method zijn ingesteld op de opgegeven waarden.

Uitzonderingen

expression is null.

method is niet null en de methode die deze vertegenwoordigt, retourneert void, is niet static (Shared in Visual Basic) of neemt niet precies één argument.

method is null en de unaire min-operator is niet gedefinieerd voor expression. Type.

– of –

expression. Het type (of het bijbehorende niet-null-type als het een type null-waarde is) kan niet worden toegewezen aan het argumenttype van de methode die wordt vertegenwoordigd door method.

Opmerkingen

De Method eigenschap van het resultaat UnaryExpression wordt ingesteld op de implementatiemethode. De Type eigenschap is ingesteld op het type knooppunt. Als het knooppunt wordt opgeheven, zijn de IsLifted en IsLiftedToNull eigenschappen beide true. Anders zijn ze onwaar.

Implementatiemethode

De volgende regels bepalen de implementatiemethode voor de bewerking:

  • Als method niet is null en deze een niet-ongeldige static (Shared in Visual Basic) vertegenwoordigt, is dit de implementatiemethode voor het knooppunt.

  • Als expression. Type is een door de gebruiker gedefinieerd type dat de unaire min-operator definieert, de MethodInfo operator die de implementatiemethode is.

  • Anders, als expression. Het type is een numeriek type, de implementatiemethode is null.

Type knooppunt en opgeheven versus niet-opgeheven

Als de implementatiemethode niet null is:

  • Als expression. Het type kan worden toegewezen aan het argumenttype van de implementatiemethode. Het knooppunt wordt niet opgeheven. Het type van het knooppunt is het retourtype van de implementatiemethode.

  • Als aan de volgende twee voorwaarden wordt voldaan, wordt het knooppunt opgeheven en is het type van het knooppunt het type null dat overeenkomt met het retourtype van de implementatiemethode:

    • expression. Het type is een type null-waarde en het bijbehorende niet-null-waardetype is gelijk aan het argumenttype van de implementatiemethode.

    • Het retourtype van de implementatiemethode is een niet-null-waardetype.

Als de implementatiemethode is null, is expressionhet type van het knooppunt. Type. Als expression. Het type kan niet null zijn, het knooppunt wordt niet opgeheven. Anders wordt het knooppunt opgeheven.

Van toepassing op