Assign Method
TOC
Collapse the table of content
Expand the table of content

Expression.Assign Method

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Creates a BinaryExpression that represents an assignment operation.

Namespace:  System.Linq.Expressions
Assembly:  System.Core (in System.Core.dll)

'Declaration
Public Shared Function Assign ( _
	left As Expression, _
	right As Expression _
) As BinaryExpression

Parameters

left
Type: System.Linq.Expressions.Expression
An Expression to set the Left property equal to.
right
Type: System.Linq.Expressions.Expression
An Expression to set the Right property equal to.

Return Value

Type: System.Linq.Expressions.BinaryExpression
A BinaryExpression that has the NodeType property equal to Assign and the Left and Right properties set to the specified values.

The Assign expression copies a value for value types, and it copies a reference for reference types.

The following code example shows how to create an expression that represents an assignment operation.


' Add the following directive to your file:
' Imports System.Linq.Expressions 

' To demonstrate the assignment operation, create a variable.
Dim variableExpr As ParameterExpression = Expression.Variable(GetType(String), "sampleVar")

' This expression represents the assignment of a value
' to a variable expression.
' It copies a value for value types, and it
' copies a reference for reference types.
Dim assignExpr As Expression = Expression.Assign(
    variableExpr,
    Expression.Constant("Hello World!")
    )

' The block expression allows for executing several expressions sequentually.
' In this block, you pass the variable expression as a parameter,
' and then assign this parameter a value in the assign expression.
Dim blockExpr As Expression = Expression.Block(
      New ParameterExpression() {variableExpr}, assignExpr
      )

' Print the assign expression.
outputBlock.Text &= assignExpr.ToString() & vbCrLf

' The following statement first creates an expression tree,
' then compiles it, and then executes it. 
outputBlock.Text &= Expression.Lambda(Of Func(Of String))(blockExpr).Compile()() & vbCrLf

' This code example produces the following output:
'
' (sampleVar = "Hello World!")
' Hello World!


Windows Phone OS

Supported in: 8.1, 8.0

Show:
© 2017 Microsoft