BinaryExpression Classe

Définition

Représente une expression qui a un opérateur binaire.

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
Héritage
BinaryExpression

Exemples

L’exemple suivant crée un BinaryExpression objet qui représente la soustraction d’un nombre d’un autre.

// 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)

Remarques

La BinaryExpression classe représente une expression qui a un opérateur binaire.

Les tableaux suivants résument les méthodes de fabrique qui peuvent être utilisées pour créer un BinaryExpression type de nœud spécifique, représenté par la NodeType propriété. Chaque table contient des informations pour une classe spécifique d’opérations telles qu’arithmétique ou bit à bit.

Opérations arithmétiques binaires

Type de nœud Méthode de fabrique
Add Add
AddChecked AddChecked
Divide Divide
Modulo Modulo
Multiply Multiply
MultiplyChecked MultiplyChecked
Power Power
Subtract Subtract
SubtractChecked SubtractChecked

Opérations au niveau du bit

Type de nœud Méthode de fabrique
And And
Or Or
ExclusiveOr ExclusiveOr

Opérations de décalage

Type de nœud Méthode de fabrique
LeftShift LeftShift
RightShift RightShift

Opérations booléennes conditionnelles

Type de nœud Méthode de fabrique
AndAlso AndAlso
OrElse OrElse

Opérations de comparaison

Type de nœud Méthode de fabrique
Equal Equal
NotEqual NotEqual
GreaterThanOrEqual GreaterThanOrEqual
GreaterThan GreaterThan
LessThan LessThan
LessThanOrEqual LessThanOrEqual

Opérations de coalescence

Type de nœud Méthode de fabrique
Coalesce Coalesce

Opérations d’indexation de tableau

Type de nœud Méthode de fabrique
ArrayIndex ArrayIndex

En outre, les MakeBinary méthodes peuvent également être utilisées pour créer un BinaryExpression. Ces méthodes de fabrique peuvent être utilisées pour créer une BinaryExpression d’un type de nœud qui représente une opération binaire. Le paramètre de ces méthodes de type NodeType spécifie le type de nœud souhaité.

Propriétés

Nom Description
CanReduce

Obtient une valeur qui indique si le nœud de l’arborescence d’expressions peut être réduit.

Conversion

Obtient la fonction de conversion de type utilisée par une opération de fusion ou d’affectation composée.

IsLifted

Obtient une valeur qui indique si le nœud de l’arborescence d’expressions représente un appel levé à un opérateur.

IsLiftedToNull

Obtient une valeur qui indique si le nœud de l’arborescence d’expressions représente un appel levé à un opérateur dont le type de retour est levé vers un type Nullable.

Left

Obtient l’opérande gauche de l’opération binaire.

Method

Obtient la méthode d’implémentation pour l’opération binaire.

NodeType

Obtient le type de nœud de ce Expression.

(Hérité de Expression)
Right

Obtient l’opérande droit de l’opération binaire.

Type

Obtient le type statique de l’expression que cela Expression représente.

(Hérité de Expression)

Méthodes

Nom Description
Accept(ExpressionVisitor)

Répartit vers la méthode de visite spécifique pour ce type de nœud. Par exemple, MethodCallExpression appelle le VisitMethodCall(MethodCallExpression).

Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
Reduce()

Réduit le nœud d’expression binaire à une expression plus simple.

ReduceAndCheck()

Réduit ce nœud à une expression plus simple. Si CanReduce retourne true, cela doit renvoyer une expression valide. Cette méthode peut retourner un autre nœud qui lui-même doit être réduit.

(Hérité de Expression)
ReduceExtensions()

Réduit l’expression à un type de nœud connu (qui n’est pas un nœud d’extension) ou retourne simplement l’expression s’il s’agit déjà d’un type connu.

(Hérité de Expression)
ToString()

Retourne une représentation textuelle du Expression.

(Hérité de Expression)
Update(Expression, LambdaExpression, Expression)

Crée une expression semblable à celle-ci, mais à l’aide des enfants fournis. Si tous les enfants sont identiques, il retourne cette expression.

VisitChildren(ExpressionVisitor)

Réduit le nœud, puis appelle le délégué visiteur sur l’expression réduite. La méthode lève une exception si le nœud n’est pas réductible.

(Hérité de Expression)

S’applique à