Expression.GreaterThan Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Erstellt eine BinaryExpression, die einen numerischen "Größer als"-Vergleich darstellt.
Überlädt
| GreaterThan(Expression, Expression) |
Erstellt eine BinaryExpression, die einen numerischen "Größer als"-Vergleich darstellt. |
| GreaterThan(Expression, Expression, Boolean, MethodInfo) |
Erstellt eine BinaryExpression, die einen numerischen "Größer als"-Vergleich darstellt. Die implementierende Methode kann angegeben werden. |
GreaterThan(Expression, Expression)
- Quelle:
- BinaryExpression.cs
- Quelle:
- BinaryExpression.cs
- Quelle:
- BinaryExpression.cs
Erstellt eine BinaryExpression, die einen numerischen "Größer als"-Vergleich darstellt.
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
Parameter
- left
- Expression
Ein Expression, auf den die Left-Eigenschaft festgelegt werden soll.
- right
- Expression
Ein Expression, auf den die Right-Eigenschaft festgelegt werden soll.
Gibt zurück
Ein BinaryExpression, bei dem die NodeType-Eigenschaft gleich GreaterThan ist und die Left-Eigenschaft sowie die Right-Eigenschaft auf die angegebenen Werte festgelegt sind.
Ausnahmen
left oder right ist null.
Der "Größer als"-Operator ist für left.Type und right.Type nicht definiert.
Beispiele
Das folgende Codebeispiel zeigt, wie Sie einen Ausdruck erstellen, der zwei ganze Zahlen vergleicht.
// 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
Hinweise
Die resultierende BinaryExpression hat die Method -Eigenschaft auf die implementierende Methode festgelegt. Die Type -Eigenschaft wird auf den Typ des Knotens festgelegt. Wenn der Knoten angehoben wird, lautet truedie IsLifted -Eigenschaft . Andernfalls lautet der Wert false. Die IsLiftedToNull -Eigenschaft ist immer false. Die Conversion-Eigenschaft ist null.
Die folgenden Informationen beschreiben die Implementierenden Methode, den Knotentyp und ob ein Knoten angehoben wird.
Implementieren der Methode
Die folgenden Regeln bestimmen die Implementierungsmethode für den Vorgang:
Wenn die Type -Eigenschaft von
leftoderrighteinen benutzerdefinierten Typ darstellt, der den Operator "größer als" überlädt, ist der , der MethodInfo diese Methode darstellt, die implementierende Methode.Andernfalls, wenn
left. Geben Sie und einright. Typ sind numerische Typen, die implementierenden Methoden sindnull.
Knotentyp und "Lifted" im Vergleich zu "Non-Lifted"
Wenn die implementierenden Methode nicht nulllautet:
Wenn
left. Geben Sie und einright. Der Typ kann den entsprechenden Argumenttypen der implementierenden Methode zugewiesen werden, der Knoten wird nicht angehoben. Der Typ des Knotens ist der Rückgabetyp der implementierenden Methode.Wenn die folgenden beiden Bedingungen erfüllt sind, wird der Knoten angehoben, und der Typ des Knotens lautet Boolean:
left. Geben Sie und einright. Typ sind beide Werttypen, von denen mindestens einer null-wertefähig ist, und die entsprechenden Typen, die keine Nullwerte zulassen, gleich den entsprechenden Argumenttypen der implementierenden Methode sind.Der Rückgabetyp der implementierenden Methode ist Boolean.
Wenn die implementierenden Methode lautet null:
Wenn
left. Geben Sie und einright. Der Typ kann nicht null sein, der Knoten wird nicht angehoben. Der Typ des Knotens ist Boolean.Wenn
left. Geben Sie und einright. Der Typ kann null zulassen, und der Knoten wird angehoben. Der Typ des Knotens ist Boolean.
Gilt für:
GreaterThan(Expression, Expression, Boolean, MethodInfo)
- Quelle:
- BinaryExpression.cs
- Quelle:
- BinaryExpression.cs
- Quelle:
- BinaryExpression.cs
Erstellt eine BinaryExpression, die einen numerischen "Größer als"-Vergleich darstellt. Die implementierende Methode kann angegeben werden.
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);
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
Parameter
- left
- Expression
Ein Expression, auf den die Left-Eigenschaft festgelegt werden soll.
- right
- Expression
Ein Expression, auf den die Right-Eigenschaft festgelegt werden soll.
- liftToNull
- Boolean
true, um IsLiftedToNull auf true festzulegen, und false, um IsLiftedToNull auf false festzulegen.
- method
- MethodInfo
Ein MethodInfo, auf das die Method-Eigenschaft festgelegt werden soll.
Gibt zurück
Eine BinaryExpression, bei der die NodeType-Eigenschaft gleich GreaterThan ist und die Eigenschaften Left, Right, IsLiftedToNull und Method auf die angegebenen Werte festgelegt sind.
Ausnahmen
left oder right ist null.
method ist nicht null, und die dargestellte Methode gibt void zurück, ist nicht static (Shared in Visual Basic) oder akzeptiert nicht genau zwei Argumente.
method ist null, und der "Größer als"-Operator ist für left.Type und right.Type nicht definiert.
Hinweise
Die resultierende BinaryExpression hat die Method -Eigenschaft auf die implementierende Methode festgelegt. Die Type -Eigenschaft wird auf den Typ des Knotens festgelegt. Wenn der Knoten angehoben wird, ist die IsLifted -Eigenschaft und die IsLiftedToNull -Eigenschaft gleich liftToNull.true Andernfalls sind falsebeide . Die Conversion-Eigenschaft ist null.
Die folgenden Informationen beschreiben die Implementierenden Methode, den Knotentyp und ob ein Knoten angehoben wird.
Implementieren der Methode
Die folgenden Regeln bestimmen die Implementierungsmethode für den Vorgang:
Wenn
methodnichtnullist und eine nicht leere Methode (Sharedin Visual Basic) darstellt,staticdie zwei Argumente akzeptiert, handelt es sich um die implementierende Methode.Wenn andernfalls
leftdie Type -Eigenschaft von oderrighteinen benutzerdefinierten Typ darstellt, der den Operator "größer als" überlädt, ist die , die MethodInfo diese Methode darstellt, die implementierende Methode.Andernfalls, wenn
left. Geben Sie und einright. Typ sind numerische Typen, die implementierenden Methoden sindnull.
Knotentyp und "Lifted" im Vergleich zu "Non-Lifted"
Wenn die implementierenden Methode nicht nulllautet:
Wenn
left. Geben Sie und einright. Der Typ kann den entsprechenden Argumenttypen der implementierenden Methode zugewiesen werden, der Knoten wird nicht angehoben. Der Typ des Knotens ist der Rückgabetyp der implementierenden Methode.Wenn die folgenden beiden Bedingungen erfüllt sind, wird der Knoten angehoben: außerdem kann der Typ des Knotens NULL-Werte zulassenBoolean, wenn
trueliftToNulloderliftToNullBoolean istfalse:left. Geben Sie und einright. Typ sind beide Werttypen, von denen mindestens einer null-wertefähig ist, und die entsprechenden Typen, die keine Nullwerte zulassen, gleich den entsprechenden Argumenttypen der implementierenden Methode sind.Der Rückgabetyp der implementierenden Methode ist Boolean.
Wenn die implementierenden Methode lautet null:
Wenn
left. Geben Sie und einright. Der Typ kann nicht null sein, der Knoten wird nicht angehoben. Der Typ des Knotens ist Boolean.Wenn
left. Geben Sie und einright. Der Typ kann null zulassen, und der Knoten wird angehoben. Der Typ des Knotens kann NULL-Werte zulassen Boolean , wennliftToNulltrueoder BooleanliftToNullistfalse.