Expression.Power Metod

Definition

Skapar en BinaryExpression som representerar att höja ett tal till en makt.

Överlagringar

Name Description
Power(Expression, Expression)

Skapar en BinaryExpression som representerar att höja ett tal till en makt.

Power(Expression, Expression, MethodInfo)

Skapar en BinaryExpression som representerar att höja ett tal till en makt.

Power(Expression, Expression)

Skapar en BinaryExpression som representerar att höja ett tal till en makt.

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

Parametrar

left
Expression

En Expression som egenskapen Left ska vara lika med.

right
Expression

En Expression som egenskapen Right ska vara lika med.

Returer

En BinaryExpression som har egenskapen NodeType lika med Power och Left egenskaperna och Right inställda på de angivna värdena.

Undantag

left eller right är null.

Exponentiationsoperatorn har inte definierats för left. Skriv och right. Typ.

-eller-

left. Skriv och/eller right. Typen är inte Double.

Kommentarer

Den resulterande BinaryExpression egenskapen har Method angetts till implementeringsmetoden. Egenskapen Type är inställd på nodens typ. Om noden lyfts är både IsLifted och IsLiftedToNull egenskaperna true. Annars är de false. Egenskapen Conversion är null.

Följande information beskriver implementeringsmetoden, nodtypen och om en nod lyfts.

Implementeringsmetod

Följande regler avgör implementeringsmetoden för åtgärden:

  • Type Om egenskapen för antingen left eller right representerar en användardefinierad typ som överbelastar exponenteringsoperatorn MethodInfo är den som representerar den metoden implementeringsmetoden.

  • Annars, om left. Skriv och right. Typen är båda Double, implementeringsmetoden är Pow.

Nodtyp och lyft jämfört med icke-lyft

  • Om left.Typ och right.Typ kan tilldelas till motsvarande argumenttyper i implementeringsmetoden, lyfts noden inte. Nodens typ är returtypen för implementeringsmetoden.

  • Om följande två villkor uppfylls lyfts noden och nodens typ är den null-typ som motsvarar implementeringsmetodens returtyp:

    • left.Typ och right.Typ är båda värdetyper av vilka minst en är nullbar och vars motsvarande icke-nullbara typer är lika med de motsvarande argumenttyperna för den implementerande metoden.

    • Returtypen för implementeringsmetoden är en värdetyp som inte kan ogiltigförklaras.

Gäller för

Power(Expression, Expression, MethodInfo)

Skapar en BinaryExpression som representerar att höja ett tal till en makt.

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

Parametrar

left
Expression

En Expression som egenskapen Left ska vara lika med.

right
Expression

En Expression som egenskapen Right ska vara lika med.

method
MethodInfo

A MethodInfo för att ange egenskapen Method lika med.

Returer

En BinaryExpression som har NodeType egenskapen lika med Power och Leftegenskaperna , Rightoch Method som är inställda på de angivna värdena.

Undantag

left eller right är null.

method är inte null och metoden den representerar returnerar void, är inte static (Shared i Visual Basic) eller tar inte exakt två argument.

method är null och exponentiationsoperatorn har inte definierats för left. Skriv och right. Typ.

-eller-

method är null och left. Skriv och/eller right. Typen är inte Double.

Kommentarer

Den resulterande BinaryExpression egenskapen har Method angetts till implementeringsmetoden. Egenskapen Type är inställd på nodens typ. Om noden lyfts är både IsLifted och IsLiftedToNull egenskaperna true. Annars är de false. Egenskapen Conversion är null.

Följande information beskriver implementeringsmetoden, nodtypen och om en nod lyfts.

Implementeringsmetod

Följande regler avgör implementeringsmetoden för åtgärden:

  • Om method inte är null och den representerar en icke-void, static (Shared i Visual Basic) som tar två argument, är det implementeringsmetoden.

  • Om Type egenskapen för antingen left eller right representerar en användardefinierad typ som överbelastar exponenteringsoperatorn, är den MethodInfo som representerar den metoden implementeringsmetoden.

  • Annars, om left. Skriv och right. Typen är båda Double, implementeringsmetoden är Pow.

Nodtyp och lyft jämfört med icke-lyft

  • Om left.Typ och right.Typ kan tilldelas till motsvarande argumenttyper i implementeringsmetoden, lyfts noden inte. Nodens typ är returtypen för implementeringsmetoden.

  • Om följande två villkor uppfylls lyfts noden och nodens typ är den null-typ som motsvarar implementeringsmetodens returtyp:

    • left.Typ och right.Typ är båda värdetyper av vilka minst en är nullbar och vars motsvarande icke-nullbara typer är lika med de motsvarande argumenttyperna för den implementerande metoden.

    • Returtypen för implementeringsmetoden är en värdetyp som inte kan ogiltigförklaras.

Gäller för