This documentation is archived and is not being maintained.

Expression.Lambda<TDelegate> Method (Expression, ParameterExpression[])

Creates an Expression<TDelegate> where the delegate type is known at compile time.

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

public static Expression<TDelegate> Lambda<TDelegate>(
	Expression body,
	params ParameterExpression[] parameters
)

Type Parameters

TDelegate

A delegate type.

Parameters

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

Return Value

Type: System.Linq.Expressions.Expression<TDelegate>
An Expression<TDelegate> that has the NodeType property equal to Lambda and the Body and Parameters properties set to the specified values.

ExceptionCondition
ArgumentNullException

body is null.

-or-

One or more elements in parameters are null.

ArgumentException

TDelegate is not a delegate type.

-or-

body.Type represents a type that is not assignable to the return type of TDelegate.

-or-

parameters does not contain the same number of elements as the list of parameters for TDelegate.

-or-

The Type property of an element of parameters is not assignable from the type of the corresponding parameter type of TDelegate.

The number of parameters for the delegate type TDelegate must equal the number of elements in parameters.

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

The Type property of the resulting object represents the type TDelegate. If parameters is null, the Parameters property of the resulting object is an empty collection.

.NET Framework

Supported in: 4, 3.5

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Show: