BinaryExpression Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje výraz, který má binární operátor.
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
- Dědičnost
Příklady
Následující příklad vytvoří BinaryExpression objekt, který představuje odčítání jednoho čísla od druhého.
// 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)
Poznámky
Třída BinaryExpression představuje výraz, který má binární operátor.
Následující tabulky shrnují tovární metody, které lze použít k vytvoření BinaryExpression s konkrétním typem uzlu, reprezentovaným vlastností NodeType. Každá tabulka obsahuje informace pro konkrétní třídu operací, jako jsou aritmetické nebo bitové operace.
Binární aritmetické operace
| Typ uzlu | Metoda továrny |
|---|---|
| Add | Add |
| AddChecked | AddChecked |
| Divide | Divide |
| Modulo | Modulo |
| Multiply | Multiply |
| MultiplyChecked | MultiplyChecked |
| Power | Power |
| Subtract | Subtract |
| SubtractChecked | SubtractChecked |
Bitové operace
| Typ uzlu | Metoda továrny |
|---|---|
| And | And |
| Or | Or |
| ExclusiveOr | ExclusiveOr |
Směnové operace
| Typ uzlu | Metoda továrny |
|---|---|
| LeftShift | LeftShift |
| RightShift | RightShift |
Podmíněné logické operace
| Typ uzlu | Metoda továrny |
|---|---|
| AndAlso | AndAlso |
| OrElse | OrElse |
Operace porovnání
| Typ uzlu | Metoda továrny |
|---|---|
| Equal | Equal |
| NotEqual | NotEqual |
| GreaterThanOrEqual | GreaterThanOrEqual |
| GreaterThan | GreaterThan |
| LessThan | LessThan |
| LessThanOrEqual | LessThanOrEqual |
Operace shodování
| Typ uzlu | Metoda továrny |
|---|---|
| Coalesce | Coalesce |
Operace indexování polí
| Typ uzlu | Metoda továrny |
|---|---|
| ArrayIndex | ArrayIndex |
Kromě toho lze metody MakeBinary použít také k vytvoření BinaryExpression. Tyto tovární metody lze použít k vytvoření BinaryExpression libovolného typu uzlu, který představuje binární operaci. Parametr těchto metod, který je typu NodeType , určuje požadovaný typ uzlu.
Vlastnosti
| Name | Description |
|---|---|
| CanReduce |
Získá hodnotu, která označuje, zda je možné snížit uzel stromu výrazu. |
| Conversion |
Získá funkci převodu typu, která je používána operací sloučí nebo složené přiřazení. |
| IsLifted |
Získá hodnotu, která označuje, zda uzel stromu výrazu představuje zvedané volání operátoru. |
| IsLiftedToNull |
Získá hodnotu, která označuje, zda stromový uzel výrazu představuje lifted volání operátor, jehož návratový typ je zvednut do typu nullable. |
| Left |
Získá levý operand binární operace. |
| Method |
Získá implementovat metodu binární operace. |
| NodeType |
Získá typ uzlu tohoto Expression. (Zděděno od Expression) |
| Right |
Získá správný operand binární operace. |
| Type |
Získá statický typ výrazu, který představuje Expression . (Zděděno od Expression) |
Metody
| Name | Description |
|---|---|
| Accept(ExpressionVisitor) |
Odešle konkrétní metodu návštěvy pro tento typ uzlu. MethodCallExpression Například volá .VisitMethodCall(MethodCallExpression) |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| Reduce() |
Zmenší uzel binárního výrazu na jednodušší výraz. |
| ReduceAndCheck() |
Zmenší tento uzel na jednodušší výraz. Pokud CanReduce vrátí hodnotu true, měl by vrátit platný výraz. Tato metoda může vrátit jiný uzel, který se musí snížit. (Zděděno od Expression) |
| ReduceExtensions() |
Zmenšuje výraz na známý typ uzlu (který není uzel rozšíření), nebo pouze vrátí výraz, pokud je již známým typem. (Zděděno od Expression) |
| ToString() |
Vrátí textovou reprezentaci Expression. (Zděděno od Expression) |
| Update(Expression, LambdaExpression, Expression) |
Vytvoří nový výraz, který je podobný tomuto, ale použije zadané podřízené položky. Pokud jsou všechny podřízené položky stejné, vrátí tento výraz. |
| VisitChildren(ExpressionVisitor) |
Zmenší uzel a potom zavolá delegáta návštěvníka na zkrácený výraz. Metoda vyvolá výjimku, pokud uzel není reducible. (Zděděno od Expression) |