Expression.Equal Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
BinaryExpression Eşitlik karşılaştırmayı temsil eden bir oluşturur.
Aşırı Yüklemeler
Equal(Expression, Expression) |
BinaryExpression Eşitlik karşılaştırmayı temsil eden bir oluşturur. |
Equal(Expression, Expression, Boolean, MethodInfo) |
BinaryExpression Eşitlik karşılaştırmayı temsil eden bir oluşturur. Uygulayan yöntem belirtilebilir. |
Equal(Expression, Expression)
- Kaynak:
- BinaryExpression.cs
- Kaynak:
- BinaryExpression.cs
- Kaynak:
- BinaryExpression.cs
BinaryExpression Eşitlik karşılaştırmayı temsil eden bir oluşturur.
public:
static System::Linq::Expressions::BinaryExpression ^ Equal(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression Equal (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member Equal : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function Equal (left As Expression, right As Expression) As BinaryExpression
Parametreler
- left
- Expression
Özelliğinin Left değerine eşit olarak ayarlanması için birExpression.
- right
- Expression
Özelliğinin Right değerine eşit olarak ayarlanması için birExpression.
Döndürülenler
BinaryExpression ve ve özellikleri belirtilen değerlere EqualLeftRight ayarlanmış özelliğine sahip NodeType bir.
Özel durumlar
left
veya right
şeklindedir null
.
eşitlik işleci için left
tanımlanmamıştır. ve right
yazın. Türü.
Örnekler
Aşağıdaki kod örneği, iki bağımsız değişkeninin değerlerinin eşit olup olmadığını denetleen bir ifadenin nasıl oluşturulacağını gösterir.
// Add the following directive to your file:
// using System.Linq.Expressions;
// This expression compares the values of its two arguments.
// Both arguments need to be of the same type.
Expression equalExpr = Expression.Equal(
Expression.Constant(42),
Expression.Constant(45)
);
// Print out the expression.
Console.WriteLine(equalExpr.ToString());
// The following statement first creates an expression tree,
// then compiles it, and then executes it.
Console.WriteLine(
Expression.Lambda<Func<bool>>(equalExpr).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 equalExpr As Expression = Expression.Equal(
Expression.Constant(42),
Expression.Constant(45)
)
' Print the expression.
Console.WriteLine(equalExpr.ToString())
' The following statement first creates an expression tree,
' then compiles it, and then executes it.
Console.WriteLine(
Expression.Lambda(Of Func(Of Boolean))(equalExpr).Compile()())
' This code example produces the following output:
'
' (42 == 45)
' False
Açıklamalar
Elde edilen BinaryExpressionMethod özelliği uygulayan yönteme ayarlanmıştır. Type özelliği düğümün türüne ayarlanır. Düğüm kaldırılırsa IsLifted özelliği olur true
. Aksi takdirde, olur false
. IsLiftedToNull özelliği her zaman false
şeklindedir. Aşağıdaki bilgiler uygulama yöntemini, düğüm türünü ve bir düğümün kaldırılıp kaldırılmadığını açıklar.
Yöntem Uygulama
Aşağıdaki kurallar, işlem için uygulama yöntemini belirler:
Type veya
right
özelliğileft
, equality işlecini aşırı yükleyen kullanıcı tanımlı bir türü temsil ederse, MethodInfo bu yöntemi temsil eden uygulama yöntemidir.Aksi takdirde, uygulayan yöntem olur
null
.
Düğüm Türü ve Yükseltilmiş ve Yükseltilmemiş Karşılaştırması
Uygulayan yöntem değilse null
:
Ise
left
. veright
yazın. Tür, uygulayan yöntemin ilgili bağımsız değişken türlerine atanabilir, düğüm kaldırılmaz. Düğümün türü, uygulayan yöntemin dönüş türüdür.Aşağıdaki iki koşul karşılanırsa düğüm kaldırılır ve düğümün türü olur Boolean:
left
. veright
yazın. Tür, en az birinin null atanabilir olduğu ve karşılık gelen boş değer atanamayan türlerin her ikisi de uygulayan yöntemin karşılık gelen bağımsız değişken türlerine eşit olan değer türleridir.Uygulayan yöntemin dönüş türü şeklindedir Boolean.
Uygulayan yöntem ise null
:
Ise
left
. veright
yazın. Türün her ikisi de null atanamaz, düğüm kaldırılmaz. Düğümün türü şeklindedir Boolean.Ise
left
. veright
yazın. Türün her ikisi de null atanabilir, düğüm kaldırılır. Düğümün türü şeklindedir Boolean.
Şunlara uygulanır
Equal(Expression, Expression, Boolean, MethodInfo)
- Kaynak:
- BinaryExpression.cs
- Kaynak:
- BinaryExpression.cs
- Kaynak:
- BinaryExpression.cs
BinaryExpression Eşitlik karşılaştırmayı temsil eden bir oluşturur. Uygulayan yöntem belirtilebilir.
public:
static System::Linq::Expressions::BinaryExpression ^ Equal(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, bool liftToNull, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression Equal (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, bool liftToNull, System.Reflection.MethodInfo method);
public static System.Linq.Expressions.BinaryExpression Equal (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, bool liftToNull, System.Reflection.MethodInfo? method);
static member Equal : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * bool * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function Equal (left As Expression, right As Expression, liftToNull As Boolean, method As MethodInfo) As BinaryExpression
Parametreler
- left
- Expression
Özelliğinin Left değerine eşit olarak ayarlanması için birExpression.
- right
- Expression
Özelliğinin Right değerine eşit olarak ayarlanması için birExpression.
- liftToNull
- Boolean
true
olarak ayarlanırIsLiftedToNull; olarak ayarlanır IsLiftedToNullfalse
. false
true
- method
- MethodInfo
Özelliğini eşittir Method olarak ayarlamak için AMethodInfo.
Döndürülenler
BinaryExpression özelliğine Equal eşit NodeType olan ve Left, Right, IsLiftedToNullve Method özellikleri belirtilen değerlere ayarlanmış.
Özel durumlar
left
veya right
şeklindedir null
.
method
değil null
ve temsil ettiği yöntem döndürür void
, değil static
(Shared
Visual Basic'te) veya tam olarak iki bağımsız değişken almaz.
method
is null
ve equality işleci için left
tanımlanmamıştır. ve right
yazın. Türü.
Açıklamalar
Elde edilen BinaryExpressionMethod özelliği uygulayan yönteme ayarlanmıştır. Type özelliği düğümün türüne ayarlanır. Düğüm kaldırılırsa IsLifted özelliği olur true
ve IsLiftedToNull özelliği değerine liftToNull
eşittir. Aksi takdirde, ikisi de false
olur. Aşağıdaki bilgiler uygulama yöntemini, düğüm türünü ve bir düğümün kaldırılıp kaldırılmadığını açıklar.
Yöntem Uygulama
Aşağıdaki kurallar, işlem için uygulama yöntemini belirler:
değilse
method
null
ve iki bağımsız değişken alan voidstatic
olmayan bir yöntemi (Shared
Visual Basic'te) temsil ediyorsa, uygulama yöntemidir.Aksi takdirde, Type veya
right
özelliğileft
eşitlik işlecini aşırı yükleyen kullanıcı tanımlı bir türü temsil ederse, MethodInfo bu yöntemi temsil eden uygulama yöntemidir.Aksi takdirde, uygulayan yöntem olur
null
.
Düğüm Türü ve Yükseltilmiş ve Yükseltilmemiş Karşılaştırması
Uygulayan yöntem değilse null
:
Ise
left
. veright
yazın. Tür, uygulayan yöntemin ilgili bağımsız değişken türlerine atanabilir, düğüm kaldırılmaz. Düğümün türü, uygulayan yöntemin dönüş türüdür.Aşağıdaki iki koşul karşılanırsa düğüm kaldırılır; ayrıca, düğüm türü ise veya ise null atanabilir Boolean
liftToNull
true
olurfalse
:liftToNull
Booleanleft
. veright
yazın. Tür, en az birinin null atanabilir olduğu ve karşılık gelen boş değer atanamayan türlerin her ikisi de uygulayan yöntemin karşılık gelen bağımsız değişken türlerine eşit olan değer türleridir.Uygulayan yöntemin dönüş türü şeklindedir Boolean.
Uygulayan yöntem ise null
:
Ise
left
. veright
yazın. Türün her ikisi de null atanamaz, düğüm kaldırılmaz. Düğümün türü şeklindedir Boolean.Ise
left
. veright
yazın. Türün her ikisi de null atanabilir, düğüm kaldırılır. düğüm türü ise veyaliftToNull
ise null atanabilirBoolean.liftToNull
false
true
Boolean