BinaryExpression Sınıf
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.
İkili işleci olan 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
Ö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
sınıfı, BinaryExpression ikili işleci olan bir ifadeyi temsil eder.
Aşağıdaki tablolarda, özelliğiyle BinaryExpression temsil edilen belirli bir düğüm türüne sahip bir NodeType 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 iş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 işlemler
| Düğüm Türü | Fabrika Yöntemi |
|---|---|
| And | And |
| Or | Or |
| ExclusiveOr | ExclusiveOr |
Shift işlemleri
| Düğüm Türü | Fabrika Yöntemi |
|---|---|
| LeftShift | LeftShift |
| RightShift | RightShift |
Koşullu Boole işlemleri
| Düğüm Türü | Fabrika Yöntemi |
|---|---|
| AndAlso | AndAlso |
| OrElse | OrElse |
Karşılaştırma işlemleri
| Düğüm Türü | Fabrika Yöntemi |
|---|---|
| Equal | Equal |
| NotEqual | NotEqual |
| GreaterThanOrEqual | GreaterThanOrEqual |
| GreaterThan | GreaterThan |
| LessThan | LessThan |
| LessThanOrEqual | LessThanOrEqual |
Birleştirme işlemleri
| Düğüm Türü | Fabrika Yöntemi |
|---|---|
| Coalesce | Coalesce |
Dizi dizin oluşturma iş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şlem temsil eden herhangi bir düğüm türünden bir BinaryExpression oluşturmak için kullanılabilir. Bu yöntemlerin türündeki NodeType parametresi, istenen düğüm türünü belirtir.
Özellikler
| Name | Description |
|---|---|
| CanReduce |
İfade ağacı düğümünü azaltılıp azaltılamayacağını gösteren bir değer alır. |
| 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 yükseltilmiş ç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 |
Bu Expression temsil ettiği ifadenin statik türünü alır. (Devralındığı yer: Expression) |
Yöntemler
| Name | Description |
|---|---|
| Accept(ExpressionVisitor) |
Bu düğüm türü için belirli bir ziyaret yöntemine gönderilir. Örneğin, MethodCallExpressionVisitMethodCall(MethodCallExpression)çağırır. |
| 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() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| Reduce() |
İkili ifade düğümünü daha basit bir ifadeye küçültür. |
| 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) küçültür veya zaten bilinen bir türse yalnızca ifadeyi döndürür. (Devralındığı yer: Expression) |
| ToString() |
Expressionmetinsel gösterimini dö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 ifadeyi döndürür. |
| 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) |