Expression.AddAssign Expression.AddAssign Expression.AddAssign Expression.AddAssign Method

定義

オーバーフロー チェックを行わない加算代入演算を表す BinaryExpression を作成します。Creates a BinaryExpression that represents an addition assignment operation that does not have overflow checking.

オーバーロード

AddAssign(Expression, Expression) AddAssign(Expression, Expression) AddAssign(Expression, Expression) AddAssign(Expression, Expression)

オーバーフロー チェックを行わない加算代入演算を表す BinaryExpression を作成します。Creates a BinaryExpression that represents an addition assignment operation that does not have overflow checking.

AddAssign(Expression, Expression, MethodInfo) AddAssign(Expression, Expression, MethodInfo) AddAssign(Expression, Expression, MethodInfo) AddAssign(Expression, Expression, MethodInfo)

オーバーフロー チェックを行わない加算代入演算を表す BinaryExpression を作成します。Creates a BinaryExpression that represents an addition assignment operation that does not have overflow checking.

AddAssign(Expression, Expression, MethodInfo, LambdaExpression) AddAssign(Expression, Expression, MethodInfo, LambdaExpression) AddAssign(Expression, Expression, MethodInfo, LambdaExpression) AddAssign(Expression, Expression, MethodInfo, LambdaExpression)

オーバーフロー チェックを行わない加算代入演算を表す BinaryExpression を作成します。Creates a BinaryExpression that represents an addition assignment operation that does not have overflow checking.

AddAssign(Expression, Expression) AddAssign(Expression, Expression) AddAssign(Expression, Expression) AddAssign(Expression, Expression)

オーバーフロー チェックを行わない加算代入演算を表す BinaryExpression を作成します。Creates a BinaryExpression that represents an addition assignment operation that does not have overflow checking.

public:
 static System::Linq::Expressions::BinaryExpression ^ AddAssign(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right);
public static System.Linq.Expressions.BinaryExpression AddAssign (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right);
static member AddAssign : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression -> System.Linq.Expressions.BinaryExpression
Public Shared Function AddAssign (left As Expression, right As Expression) As BinaryExpression

パラメーター

left
Expression Expression Expression Expression

Expression プロパティを等しく設定する LeftAn Expression to set the Left property equal to.

right
Expression Expression Expression Expression

Expression プロパティを等しく設定する RightAn Expression to set the Right property equal to.

戻り値

BinaryExpression と等しい NodeType プロパティと、指定した値に設定された AddAssign プロパティおよび Left プロパティを含む RightA BinaryExpression that has the NodeType property equal to AddAssign and the Left and Right properties set to the specified values.

次のコード例では、整数型の変数に値を追加し、操作の結果を変数に代入する式を作成する方法を示します。The following code example shows how to create an expression that adds a value to an integer variable and then assigns the result of the operation to the variable.

// Add the following directive to your file:
// using System.Linq.Expressions;

// The Parameter expression is used to create a variable.
ParameterExpression variableExpr = Expression.Variable(typeof(int), "sampleVar");

// The block expression enables you to execute several expressions sequentually.
// In this bloc, the variable is first initialized with 1. 
// Then the AddAssign method adds 2 to the variable and assigns the result to the variable.
BlockExpression addAssignExpr = Expression.Block(
    new ParameterExpression[] { variableExpr },
    Expression.Assign(variableExpr, Expression.Constant(1)),
    Expression.AddAssign(
        variableExpr,
        Expression.Constant(2)
    )
);

// Print out the expression from the block expression.
Console.WriteLine("The expressions from the block expression:");
foreach (var expr in addAssignExpr.Expressions)
    Console.WriteLine(expr.ToString());

Console.WriteLine("The result of executing the expression tree:");
// The following statement first creates an expression tree,
// then compiles it, and then executes it.
Console.WriteLine(Expression.Lambda<Func<int>>(addAssignExpr).Compile()());

// This code example produces the following output:
//
// The expressions from the block expression:
// (sampleVar = 1)
// (sampleVar += 2)

// The result of executing the expression tree:
// 3
' Add the following directive to your file:
' Imports System.Linq.Expressions 

' The parameter expression is used to create a variable.
Dim variableExpr As ParameterExpression = Expression.Variable(GetType(Integer), "sampleVar")

' The block expression enables you to execute several expressions sequentually.
' In this block, the variable is first initialized with 1. 
' Then the AddAssign method adds 2 to the variable and assigns the result to the variable.
Dim addAssignExpr As BlockExpression = Expression.Block(
    New ParameterExpression() {variableExpr},
    Expression.Assign(variableExpr, Expression.Constant(1)),
    Expression.AddAssign(
        variableExpr,
        Expression.Constant(2)
    )
)

' Print the expression from the block expression.
Console.WriteLine("The expressions from the block expression:")
For Each expr As Expression In addAssignExpr.Expressions
    Console.WriteLine(expr.ToString())
Next

Console.WriteLine("The result of executing the expression tree:")
' The following statement first creates an expression tree,
' then compiles it, and then executes it.
Console.WriteLine(Expression.Lambda(Of Func(Of Integer))(addAssignExpr).Compile()())

' This code example produces the following output:
'
' The expressions from the block expression:
' (sampleVar = 1)
' (sampleVar += 2)

' The result of executing the expression tree:
' 3

AddAssign(Expression, Expression, MethodInfo) AddAssign(Expression, Expression, MethodInfo) AddAssign(Expression, Expression, MethodInfo) AddAssign(Expression, Expression, MethodInfo)

オーバーフロー チェックを行わない加算代入演算を表す BinaryExpression を作成します。Creates a BinaryExpression that represents an addition assignment operation that does not have overflow checking.

public:
 static System::Linq::Expressions::BinaryExpression ^ AddAssign(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method);
public static System.Linq.Expressions.BinaryExpression AddAssign (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method);
static member AddAssign : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo -> System.Linq.Expressions.BinaryExpression
Public Shared Function AddAssign (left As Expression, right As Expression, method As MethodInfo) As BinaryExpression

パラメーター

left
Expression Expression Expression Expression

Expression プロパティを等しく設定する LeftAn Expression to set the Left property equal to.

right
Expression Expression Expression Expression

Expression プロパティを等しく設定する RightAn Expression to set the Right property equal to.

method
MethodInfo MethodInfo MethodInfo MethodInfo

MethodInfo プロパティを等しく設定する MethodA MethodInfo to set the Method property equal to.

戻り値

BinaryExpression と等しい NodeType プロパティと、指定した値に設定された AddAssignLeft、および Right の各プロパティを含む MethodA BinaryExpression that has the NodeType property equal to AddAssign and the Left, Right, and Method properties set to the specified values.

AddAssign(Expression, Expression, MethodInfo, LambdaExpression) AddAssign(Expression, Expression, MethodInfo, LambdaExpression) AddAssign(Expression, Expression, MethodInfo, LambdaExpression) AddAssign(Expression, Expression, MethodInfo, LambdaExpression)

オーバーフロー チェックを行わない加算代入演算を表す BinaryExpression を作成します。Creates a BinaryExpression that represents an addition assignment operation that does not have overflow checking.

public:
 static System::Linq::Expressions::BinaryExpression ^ AddAssign(System::Linq::Expressions::Expression ^ left, System::Linq::Expressions::Expression ^ right, System::Reflection::MethodInfo ^ method, System::Linq::Expressions::LambdaExpression ^ conversion);
public static System.Linq.Expressions.BinaryExpression AddAssign (System.Linq.Expressions.Expression left, System.Linq.Expressions.Expression right, System.Reflection.MethodInfo method, System.Linq.Expressions.LambdaExpression conversion);
static member AddAssign : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression * System.Reflection.MethodInfo * System.Linq.Expressions.LambdaExpression -> System.Linq.Expressions.BinaryExpression
Public Shared Function AddAssign (left As Expression, right As Expression, method As MethodInfo, conversion As LambdaExpression) As BinaryExpression

パラメーター

left
Expression Expression Expression Expression

Expression プロパティを等しく設定する LeftAn Expression to set the Left property equal to.

right
Expression Expression Expression Expression

Expression プロパティを等しく設定する RightAn Expression to set the Right property equal to.

method
MethodInfo MethodInfo MethodInfo MethodInfo

MethodInfo プロパティを等しく設定する MethodA MethodInfo to set the Method property equal to.

conversion
LambdaExpression LambdaExpression LambdaExpression LambdaExpression

LambdaExpression プロパティを等しく設定する ConversionA LambdaExpression to set the Conversion property equal to.

戻り値

BinaryExpression と等しい NodeType プロパティと、指定した値に設定された AddAssignLeftRight、および Method の各プロパティを含む ConversionA BinaryExpression that has the NodeType property equal to AddAssign and the Left, Right, Method, and Conversion properties set to the specified values.

適用対象