This documentation is archived and is not being maintained.

Expression.Lambda<TDelegate> Method (Expression, String, Boolean, IEnumerable<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,
	string name,
	bool tailCall,
	IEnumerable<ParameterExpression> parameters

Type Parameters


The delegate type.


Type: System.Linq.Expressions.Expression
An Expression to set the Body() property equal to.
Type: System.String
The name of the lambda. Used for generating debugging info.
Type: System.Boolean
A Boolean that indicates if tail call optimization will be applied when compiling the created expression.
Type: System.Collections.Generic.IEnumerable<ParameterExpression>
An IEnumerable<T> that contains 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.

.NET Framework

Supported in: 4

.NET Framework Client Profile

Supported in: 4

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.