Expression.Decrement Method (Expression)

Creates a UnaryExpression that represents the decrementing of the expression by 1.

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

public static UnaryExpression Decrement(
	Expression expression


Type: System.Linq.Expressions.Expression
An Expression to decrement.

Return Value

Type: System.Linq.Expressions.UnaryExpression
A UnaryExpression that represents the decremented expression.

This expression is functional and does not change the value of the object passed to it.

The following code example shows how to create an expression that substracts 1 from a given value.

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

double num = 5.5;

// This expression represents a decrement operation 
// that subtracts 1 from a value. 
Expression decrementExpr = Expression.Decrement(

// Print expression.
outputBlock.Text += decrementExpr.ToString() + "\n";

// The following statement first creates an expression tree,
// then compiles it, and then executes it.
outputBlock.Text +=
    Expression.Lambda<Func<double>>(decrementExpr).Compile()() + "\n";

// The value of the variable did not change,
// because the expression is functional.
outputBlock.Text += "object: " + num + "\n";

// This code example produces the following output:
// Decrement(5.5)
// 4.5
// object: 5.5


Supported in: 5, 4

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Community Additions