Expression.GreaterThan Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Skapar en BinaryExpression som representerar en numerisk jämförelse som är "större än".
Överlagringar
| Name | Description |
|---|---|
| GreaterThan(Expression, Expression) |
Skapar en BinaryExpression som representerar en numerisk jämförelse som är "större än". |
| GreaterThan(Expression, Expression, Boolean, MethodInfo) |
Skapar en BinaryExpression som representerar en numerisk jämförelse som är "större än". Implementeringsmetoden kan anges. |
GreaterThan(Expression, Expression)
Skapar en BinaryExpression som representerar en numerisk jämförelse som är "större än".
public:
static System::Linq::Expressions::BinaryExpression ^ GreaterThan(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression GreaterThan(System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member GreaterThan : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function GreaterThan (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 GreaterThan och Left egenskaperna och Right inställda på de angivna värdena.
Undantag
left eller right är null.
Operatorn "större än" har inte definierats för left. Skriv och right. Typ.
Exempel
I följande kodexempel visas hur du skapar ett uttryck som jämför två heltal.
// Add the following directive to your file:
// using System.Linq.Expressions;
// This expression compares the values of its two arguments.
// Both arguments must be of the same type.
Expression greaterThanExpr = Expression.GreaterThan(
Expression.Constant(42),
Expression.Constant(45)
);
// Print out the expression.
Console.WriteLine(greaterThanExpr.ToString());
// The following statement first creates an expression tree,
// then compiles it, and then executes it.
Console.WriteLine(
Expression.Lambda<Func<bool>>(greaterThanExpr).Compile()());
// This code example produces the following output:
//
// (42 > 45)
// False
' Add the following directive to your file:
' Imports System.Linq.Expressions
' This expression compares the values of its two arguments.
' Both arguments must be of the same type.
Dim greaterThanExpr As Expression = Expression.GreaterThan(
Expression.Constant(42),
Expression.Constant(45)
)
' Print the expression.
Console.WriteLine(greaterThanExpr.ToString())
' The following statement first creates an expression tree,
' then compiles it, and then executes it.
Console.WriteLine(
Expression.Lambda(Of Func(Of Boolean))(greaterThanExpr).Compile()())
' This code example produces the following output:
'
' (42 > 45)
' False
Kommentarer
Den resulterande BinaryExpression egenskapen har Method angetts till implementeringsmetoden. Egenskapen Type är inställd på nodens typ. Om noden lyfts är trueegenskapen IsLifted . Annars är falsedet . Egenskapen IsLiftedToNull är alltid 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
leftellerrightrepresenterar en användardefinierad typ som överbelastar operatorn "större än" är den som representerar den MethodInfo metoden implementeringsmetoden.Annars, om
left.Typ ochright.Typ är numeriska typer, är implementeringsmetodennull.
Nodtyp och lyft jämfört med icke-lyft
Om implementeringsmetoden inte nullär :
Om
left.Typ ochright.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 Boolean:
left.Typ ochright.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 Boolean.
Om implementeringsmetoden är null:
Om
left.Type ochright.Type båda är icke-nullable, lyfts noden inte. Nodens typ är Boolean.Om
left.Typ ochright.Typ båda är nullbara, lyfts noden. Nodens typ är Boolean.
Gäller för
GreaterThan(Expression, Expression, Boolean, MethodInfo)
Skapar en BinaryExpression som representerar en numerisk jämförelse som är "större än". Implementeringsmetoden kan anges.
public:
static System::Linq::Expressions::BinaryExpression ^ GreaterThan(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, bool liftToNull, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression GreaterThan(System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, bool liftToNull, System.Reflection.MethodInfo method);
static member GreaterThan : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * bool * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function GreaterThan (left As Expression, right As Expression, liftToNull As Boolean, 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.
- liftToNull
- Boolean
true för att ange IsLiftedToNull till true; false för att ange IsLiftedToNull till false.
- method
- MethodInfo
A MethodInfo för att ange egenskapen Method lika med.
Returer
En BinaryExpression som har NodeType egenskapen lika med GreaterThan och Leftegenskaperna , Right, IsLiftedToNulloch Method inställd 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 operatorn "större än" har inte definierats för left. Skriv och right. Typ.
Kommentarer
Den resulterande BinaryExpression egenskapen har Method angetts till implementeringsmetoden. Egenskapen Type är inställd på nodens typ. Om noden lyfts IsLifted är true egenskapen och egenskapen IsLiftedToNull är lika med liftToNull. Annars är de båda false. Egenskapen Conversion är null.
Följande information beskriver implementeringsmetoden, nodtypen och om en nod lyfts.
Implementeringsmetod
Följande regler bestämmer implementeringsmetoden för åtgärden :
Om
methodinte ärnulloch den representerar en icke-void,static(Sharedi Visual Basic) som tar två argument, är det implementeringsmetoden.Om Type egenskapen för antingen
leftellerrightrepresenterar en användardefinierad typ som överbelastar operatorn "större än" är den MethodInfo som representerar den metoden implementeringsmetoden.Annars, om
left.Typ ochright.Typ är numeriska typer, är implementeringsmetodennull.
Nodtyp och lyft jämfört med icke-lyft
Om implementeringsmetoden inte nullär :
Om
left.Typ ochright.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. Dessutom kan nodens typ vara null om Boolean
liftToNullärtrueeller Boolean omliftToNullärfalse:left.Typ ochright.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 Boolean.
Om implementeringsmetoden är null:
Om
left.Type ochright.Type båda är icke-nullable, lyfts noden inte. Nodens typ är Boolean.Om
left.Typ ochright.Typ båda är nullbara, lyfts noden. Nodens typ kan vara null Boolean omliftToNullärtrueeller Boolean omliftToNullärfalse.