Expression.Lambda Method (Expression, ParameterExpression[])

Creates a LambdaExpression by first constructing a delegate type.

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

public static LambdaExpression Lambda(
	Expression body,
	params ParameterExpression[] parameters


Type: System.Linq.Expressions.Expression
An Expression to set the Body property equal to.
Type: System.Linq.Expressions.ParameterExpression[]
An array of ParameterExpression objects to use to populate the Parameters collection.

Return Value

Type: System.Linq.Expressions.LambdaExpression
A LambdaExpression that has the NodeType property equal to Lambda and the Body and Parameters properties set to the specified values.


body is null.


One or more elements of parameters are null.


parameters contains more than sixteen elements.

The parameters parameter must not have more than sixteen elements.

The elements of parameters must be reference equal to the parameter expressions in body.

This method constructs an appropriate delegate type from one of the System.Func generic delegates. It then passes the delegate type to one of the Lambda factory methods to create a LambdaExpression.


Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Windows Phone OS 7.0

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