BinaryExpression Class
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Represents an expression that has a binary operator.
Assembly: System.Core (in System.Core.dll)
The BinaryExpression type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | CanReduce | Gets a value that indicates whether the expression tree node can be reduced. (Overrides Expression::CanReduce.) |
![]() | Conversion | Gets the type conversion function that is used by a coalescing or compound assignment operation. |
![]() | IsLifted | Gets a value that indicates whether the expression tree node represents a lifted call to an operator. |
![]() | IsLiftedToNull | Gets a value that indicates whether the expression tree node represents a lifted call to an operator whose return type is lifted to a nullable type. |
![]() | Left | Gets the left operand of the binary operation. |
![]() | Method | Gets the implementing method for the binary operation. |
![]() | NodeType | Gets the node type of this Expression. (Inherited from Expression.) |
![]() | Right | Gets the right operand of the binary operation. |
![]() | Type | Gets the static type of the expression that this Expression represents. (Inherited from Expression.) |
| Name | Description | |
|---|---|---|
![]() | Accept | Dispatches to the specific visit method for this node type. For example, MethodCallExpression calls the VisitMethodCall. (Overrides Expression::Accept(ExpressionVisitor).) |
![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | Reduce | Reduces the binary expression node to a simpler expression. (Overrides Expression::Reduce().) |
![]() | ReduceAndCheck | Reduces this node to a simpler expression. If CanReduce returns true, this should return a valid expression. This method can return another node which itself must be reduced. (Inherited from Expression.) |
![]() | ReduceExtensions | Reduces the expression to a known node type (that is not an Extension node) or just returns the expression if it is already a known type. (Inherited from Expression.) |
![]() | ToString | Returns a textual representation of the Expression. (Inherited from Expression.) |
![]() | Update | Creates a new expression that is like this one, but using the supplied children. If all of the children are the same, it will return this expression. |
![]() | VisitChildren | Reduces the node and then calls the visitor delegate on the reduced expression. The method throws an exception if the node is not reducible. (Inherited from Expression.) |
The following tables summarize the factory methods that can be used to create a BinaryExpression that has a specific node type, represented by the NodeType property. Each table contains information for a specific class of operations such as arithmetic or bitwise.
Binary Arithmetic Operations
Bitwise Operations
Node Type | Factory Method |
|---|---|
Shift Operations
Node Type | Factory Method |
|---|---|
Conditional Boolean Operations
Comparison Operations
Coalescing Operations
Array Indexing Operations
Node Type | Factory Method |
|---|---|
In addition, the MakeBinary methods can also be used to create a BinaryExpression. These factory methods can be used to create a BinaryExpression of any node type that represents a binary operation. The parameter of these methods that is of type NodeType specifies the desired node type.


