BinaryExpression Sınıf

Tanım

İkili işleç içeren bir ifadeyi temsil eder.

public ref class BinaryExpression : System::Linq::Expressions::Expression
public ref class BinaryExpression sealed : System::Linq::Expressions::Expression
public class BinaryExpression : System.Linq.Expressions.Expression
public sealed class BinaryExpression : System.Linq.Expressions.Expression
type BinaryExpression = class
    inherit Expression
Public Class BinaryExpression
Inherits Expression
Public NotInheritable Class BinaryExpression
Inherits Expression
Devralma
BinaryExpression

Örnekler

Aşağıdaki örnek, bir sayının diğerinden çıkarıldığını temsil eden bir BinaryExpression nesne oluşturur.

// Create a BinaryExpression that represents subtracting 14 from 53.
System.Linq.Expressions.BinaryExpression binaryExpression =
    System.Linq.Expressions.Expression.MakeBinary(
        System.Linq.Expressions.ExpressionType.Subtract,
        System.Linq.Expressions.Expression.Constant(53),
        System.Linq.Expressions.Expression.Constant(14));

Console.WriteLine(binaryExpression.ToString());

// This code produces the following output:
//
// (53 - 14)
' Create a BinaryExpression that represents subtracting 14 from 53.
Dim binaryExpression As System.Linq.Expressions.BinaryExpression = _
    System.Linq.Expressions.Expression.MakeBinary( _
        System.Linq.Expressions.ExpressionType.Subtract, _
        System.Linq.Expressions.Expression.Constant(53), _
        System.Linq.Expressions.Expression.Constant(14))

Console.WriteLine(binaryExpression.ToString())

' This code produces the following output:
'
' (53 - 14)

Açıklamalar

Aşağıdaki tablolarda, özelliğiyle NodeType temsil edilen belirli bir düğüm türüne sahip bir BinaryExpression oluşturmak için kullanılabilecek fabrika yöntemleri özetlenmiştir. Her tablo, aritmetik veya bit düzeyinde gibi belirli bir işlem sınıfına ilişkin bilgiler içerir.

İkili Aritmetik İşlemler

Düğüm Türü Fabrika Yöntemi
Add Add
AddChecked AddChecked
Divide Divide
Modulo Modulo
Multiply Multiply
MultiplyChecked MultiplyChecked
Power Power
Subtract Subtract
SubtractChecked SubtractChecked

Bit Düzeyinde İşlemler

Düğüm Türü Fabrika Yöntemi
And And
Or Or
ExclusiveOr ExclusiveOr

Shift İşlemleri

Düğüm Türü Fabrika Yöntemi
LeftShift LeftShift
RightShift RightShift

Koşullu Boole İşlemleri

Düğüm Türü Fabrika Yöntemi
AndAlso AndAlso
OrElse OrElse

Karşılaştırma İşlemleri

Düğüm Türü Fabrika Yöntemi
Equal Equal
NotEqual NotEqual
GreaterThanOrEqual GreaterThanOrEqual
GreaterThan GreaterThan
LessThan LessThan
LessThanOrEqual LessThanOrEqual

Birleşim İşlemleri

Düğüm Türü Fabrika Yöntemi
Coalesce Coalesce

Dizi Dizin Oluşturma İşlemleri

Düğüm Türü Fabrika Yöntemi
ArrayIndex ArrayIndex

Ayrıca, MakeBinary yöntemleri bir BinaryExpressionoluşturmak için de kullanılabilir. Bu fabrika yöntemleri, ikili işlemi temsil eden herhangi bir BinaryExpression düğüm türünden bir oluşturmak için kullanılabilir. Bu yöntemlerin türündeki NodeType parametresi istenen düğüm türünü belirtir.

Özellikler

CanReduce

İfade ağacı düğümünü azaltılıp azaltılamayacağını belirten bir değer alır.

CanReduce

Düğümün daha basit bir düğüme indirgenebileceğini gösterir. Bu true değerini döndürürse, azaltılmış formu oluşturmak için Reduce() çağrılabilir.

(Devralındığı yer: Expression)
Conversion

Birleştirme veya bileşik atama işlemi tarafından kullanılan tür dönüştürme işlevini alır.

IsLifted

İfade ağacı düğümünün bir işleç için kaldırılmış çağrıyı temsil edip etmediğini gösteren bir değer alır.

IsLiftedToNull

İfade ağacı düğümünün, dönüş türü null atanabilir bir türe kaldırılmış bir işleç için kaldırılmış çağrıyı temsil edip etmediğini gösteren bir değer alır.

Left

İkili işlemin sol işlenenini alır.

Method

İkili işlem için uygulama yöntemini alır.

NodeType

Bu Expressiondüğüm türünü alır.

(Devralındığı yer: Expression)
Right

İkili işlemin doğru işlenenini alır.

Type

Bunun Expression temsil ettiği ifadenin statik türünü alır.

(Devralındığı yer: Expression)

Yöntemler

Accept(ExpressionVisitor)

Bu düğüm türü için belirli bir ziyaret yöntemine gönderilir. Örneğin, MethodCallExpression öğesini çağırır VisitMethodCall(MethodCallExpression).

Accept(ExpressionVisitor)

Bu düğüm türü için belirli bir ziyaret yöntemine gönderilir. Örneğin, MethodCallExpression öğesini çağırır VisitMethodCall(MethodCallExpression).

(Devralındığı yer: Expression)
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
Reduce()

İkili ifade düğümünü daha basit bir ifadeye küçültür.

Reduce()

Bu düğümü daha basit bir ifadeye küçültür. CanReduce true döndürürse, bu geçerli bir ifade döndürmelidir. Bu yöntem, azaltması gereken başka bir düğüm döndürebilir.

(Devralındığı yer: Expression)
ReduceAndCheck()

Bu düğümü daha basit bir ifadeye küçültür. CanReduce true döndürürse, bu geçerli bir ifade döndürmelidir. Bu yöntem, azaltması gereken başka bir düğüm döndürebilir.

(Devralındığı yer: Expression)
ReduceExtensions()

İfadeyi bilinen bir düğüm türüne (uzantı düğümü değildir) azaltır veya zaten bilinen bir türse yalnızca ifadeyi döndürür.

(Devralındığı yer: Expression)
ToString()

öğesinin metinsel gösterimini Expressiondöndürür.

(Devralındığı yer: Expression)
Update(Expression, LambdaExpression, Expression)

Bunun gibi, ancak sağlanan alt öğeleri kullanarak yeni bir ifade oluşturur. Tüm alt öğeler aynıysa bu ifade döndürülecektir.

VisitChildren(ExpressionVisitor)

Düğümü azaltır ve ardından azaltılmış ifadede ziyaretçi temsilcisini çağırır. Yöntem, düğüm azaltılabilir değilse bir özel durum oluşturur.

(Devralındığı yer: Expression)

Şunlara uygulanır