Freigeben über


Expression.Lambda Methode

Definition

Erstellt eine Ausdrucksstruktur, die einen Lambda-Ausdruck darstellt.

Überlädt

Name Beschreibung
Lambda(Type, Expression, String, Boolean, IEnumerable<ParameterExpression>)

Erstellt einen LambdaExpression Ort, an dem der Delegattyp zur Kompilierungszeit bekannt ist, mit dem Namen für die Lambda-Funktion, ein Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken.

Lambda(Type, Expression, String, IEnumerable<ParameterExpression>)

Erstellt eine LambdaExpression Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit dem Namen für die Lambda-Funktion und einer aufzählbaren Auflistung von Parameterausdrücken.

Lambda(Type, Expression, Boolean, IEnumerable<ParameterExpression>)

Erstellt eine LambdaExpression Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit einem Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken.

Lambda(Expression, String, Boolean, IEnumerable<ParameterExpression>)

Erstellt zunächst LambdaExpression einen Delegatentyp aus dem Ausdruckstext, den Namen für die Lambda-Funktion, einen Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

Lambda(Type, Expression, ParameterExpression[])

Erstellt eine LambdaExpression Stelle, an der der Delegattyp zur Kompilierungszeit mit einem Array von Parameterausdrücken bekannt ist.

Lambda(Type, Expression, Boolean, ParameterExpression[])

Erstellt einen LambdaExpression Ort, an dem der Delegattyp zur Kompilierungszeit bekannt ist, mit einem Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und ein Array von Parameterausdrücken.

Lambda(Expression, String, IEnumerable<ParameterExpression>)

Erstellt einen LambdaExpression durch das erstellen eines Delegattyps aus dem Ausdruckstext, den Namen für die Lambda-Funktion und eine aufzählbare Auflistung von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

Lambda(Expression, Boolean, ParameterExpression[])

Erstellt einen LambdaExpression durch das erste Erstellen eines Delegatentyps aus dem Textkörper des Ausdrucks, einen Parameter, der angibt, ob die Optimierung des Tail-Aufrufs angewendet wird, und ein Array von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

Lambda(Expression, Boolean, IEnumerable<ParameterExpression>)

Erstellt einen LambdaExpression durch das erste Erstellen eines Delegatentyps aus dem Textkörper des Ausdrucks, einen Parameter, der angibt, ob die Optimierung des Tail-Aufrufs angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

Lambda(Type, Expression, IEnumerable<ParameterExpression>)

Erstellt eine LambdaExpression Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit einer aufzählbaren Auflistung von Parameterausdrücken.

Lambda(Expression, ParameterExpression[])

Erstellt zunächst LambdaExpression einen Delegatentyp aus dem Ausdruckstext und ein Array von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

Lambda(Expression, IEnumerable<ParameterExpression>)

Erstellt eine LambdaExpression durch das erste Erstellen eines Delegattyps aus dem Textkörper des Ausdrucks und eine aufzählbare Auflistung von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

Lambda<TDelegate>(Expression, String, IEnumerable<ParameterExpression>)

Erstellt eine Expression<TDelegate> Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit dem Namen für die Lambda-Funktion und einer aufzählbaren Auflistung von Parameterausdrücken.

Lambda<TDelegate>(Expression, Boolean, ParameterExpression[])

Erstellt einen Expression<TDelegate> Ort, an dem der Delegattyp zur Kompilierungszeit bekannt ist, mit einem Parameter, der angibt, ob die Endaufrufoptimierung angewendet wird, und ein Array von Parameterausdrücken.

Lambda<TDelegate>(Expression, String, Boolean, IEnumerable<ParameterExpression>)

Erstellt einen Expression<TDelegate> Ort, an dem der Delegattyp zur Kompilierungszeit bekannt ist, mit dem Namen für die Lambda-Funktion, ein Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken.

Lambda<TDelegate>(Expression, ParameterExpression[])

Erstellt eine Expression<TDelegate> Stelle, an der der Delegattyp zur Kompilierungszeit mit einem Array von Parameterausdrücken bekannt ist.

Lambda<TDelegate>(Expression, IEnumerable<ParameterExpression>)

Erstellt eine Expression<TDelegate> Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit einer aufzählbaren Auflistung von Parameterausdrücken.

Lambda<TDelegate>(Expression, Boolean, IEnumerable<ParameterExpression>)

Erstellt eine Expression<TDelegate> Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit einem Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken.

Lambda(Type, Expression, String, Boolean, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt einen LambdaExpression Ort, an dem der Delegattyp zur Kompilierungszeit bekannt ist, mit dem Namen für die Lambda-Funktion, ein Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(Type ^ delegateType, System::Linq::Expressions::Expression ^ body, System::String ^ name, bool tailCall, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, string name, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, string? name, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : Type * System.Linq.Expressions.Expression * string * bool * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (delegateType As Type, body As Expression, name As String, tailCall As Boolean, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parameter

delegateType
Type

Eine Type Darstellung der Stellvertretungssignatur für die Lambda-Funktion.

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

name
String

Der Name für die Lambda-Funktion. Wird zum Ausstrahlen von Debuginformationen verwendet.

tailCall
Boolean

A Boolean that indicates if tail call optimization will be applied when compiling the created expression.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

A LambdaExpression that has the NodeType property equal to Lambda and the Body properties Parameters set to the specified values.

Gilt für:

Lambda(Type, Expression, String, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt eine LambdaExpression Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit dem Namen für die Lambda-Funktion und einer aufzählbaren Auflistung von Parameterausdrücken.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(Type ^ delegateType, System::Linq::Expressions::Expression ^ body, System::String ^ name, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, string name, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, string? name, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : Type * System.Linq.Expressions.Expression * string * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (delegateType As Type, body As Expression, name As String, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parameter

delegateType
Type

Eine Type Darstellung der Stellvertretungssignatur für die Lambda-Funktion.

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

name
String

Der Name für die Lambda-Funktion. Wird zum Ausstrahlen von Debuginformationen verwendet.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

A LambdaExpression that has the NodeType property equal to Lambda and the Body properties Parameters set to the specified values.

Gilt für:

Lambda(Type, Expression, Boolean, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt eine LambdaExpression Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit einem Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(Type ^ delegateType, System::Linq::Expressions::Expression ^ body, bool tailCall, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : Type * System.Linq.Expressions.Expression * bool * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (delegateType As Type, body As Expression, tailCall As Boolean, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parameter

delegateType
Type

Eine Type Darstellung der Stellvertretungssignatur für die Lambda-Funktion.

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

tailCall
Boolean

A Boolean that indicates if tail call optimization will be applied when compiling the created expression.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

A LambdaExpression that has the NodeType property equal to Lambda and the Body properties Parameters set to the specified values.

Gilt für:

Lambda(Expression, String, Boolean, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt zunächst LambdaExpression einen Delegatentyp aus dem Ausdruckstext, den Namen für die Lambda-Funktion, einen Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(System::Linq::Expressions::Expression ^ body, System::String ^ name, bool tailCall, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, string name, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")]
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, string? name, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, string? name, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : System.Linq.Expressions.Expression * string * bool * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")>]
static member Lambda : System.Linq.Expressions.Expression * string * bool * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (body As Expression, name As String, tailCall As Boolean, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

name
String

Der Name für die Lambda-Funktion. Wird zum Ausstrahlen von Debuginformationen verwendet.

tailCall
Boolean

A Boolean that indicates if tail call optimization will be applied when compiling the created expression.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

A LambdaExpression that has the NodeType property equal to Lambda and the Body properties Parameters set to the specified values.

Attribute

Gilt für:

Lambda(Type, Expression, ParameterExpression[])

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt eine LambdaExpression Stelle, an der der Delegattyp zur Kompilierungszeit mit einem Array von Parameterausdrücken bekannt ist.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(Type ^ delegateType, System::Linq::Expressions::Expression ^ body, ... cli::array <System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, params System.Linq.Expressions.ParameterExpression[] parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, params System.Linq.Expressions.ParameterExpression[]? parameters);
static member Lambda : Type * System.Linq.Expressions.Expression * System.Linq.Expressions.ParameterExpression[] -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (delegateType As Type, body As Expression, ParamArray parameters As ParameterExpression()) As LambdaExpression

Parameter

delegateType
Type

A Type that represents a delegate signature for the lambda.

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

parameters
ParameterExpression[]

Ein Array von ParameterExpression Objekten, die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

Ein Objekt, das einen Lambda-Ausdruck darstellt, der die NodeType Eigenschaft entsprichtLambda, und die eigenschaftenParameters, die Body auf die angegebenen Werte festgelegt sind.

Ausnahmen

delegateType oder body ist null.

- oder -

Mindestens ein Element in parameters ist null.

delegateType stellt keinen Delegattyp dar.

- oder -

body. Type represents a type that is not assignable to the return type of the delegate type represent by delegateType.

- oder -

parameters enthält nicht dieselbe Anzahl von Elementen wie die Liste der Parameter für den delegattyp dargestellt durch delegateType.

- oder -

Die Type Eigenschaft eines Elements von parameters ist vom Typ des entsprechenden Parametertyps des durch den Stellvertretungstyp dargestellten delegateTypeDelegatentyps nicht zuzuweisen.

Hinweise

Das objekt, das von dieser Funktion zurückgegeben wird, ist vom Typ Expression<TDelegate>. Der LambdaExpression Typ wird verwendet, um das zurückgegebene Objekt darzustellen, da der konkrete Typ des Lambda-Ausdrucks zur Kompilierungszeit nicht bekannt ist.

Die Anzahl der Parameter für den delegatentyp, der durch dargestellt wird delegateType , muss der Länge entsprechen parameters.

Die Elemente von parameters müssen auf die Parameterausdrücke in body.

Die Type Eigenschaft des resultierenden Objekts ist gleich delegateType. Wenn parameters ja, ist nulldie Parameters Eigenschaft des resultierenden Objekts eine leere Auflistung.

Gilt für:

Lambda(Type, Expression, Boolean, ParameterExpression[])

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt einen LambdaExpression Ort, an dem der Delegattyp zur Kompilierungszeit bekannt ist, mit einem Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und ein Array von Parameterausdrücken.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(Type ^ delegateType, System::Linq::Expressions::Expression ^ body, bool tailCall, ... cli::array <System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, bool tailCall, params System.Linq.Expressions.ParameterExpression[] parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, bool tailCall, params System.Linq.Expressions.ParameterExpression[]? parameters);
static member Lambda : Type * System.Linq.Expressions.Expression * bool * System.Linq.Expressions.ParameterExpression[] -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (delegateType As Type, body As Expression, tailCall As Boolean, ParamArray parameters As ParameterExpression()) As LambdaExpression

Parameter

delegateType
Type

Eine Type Darstellung der Stellvertretungssignatur für die Lambda-Funktion.

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

tailCall
Boolean

A Boolean that indicates if tail call optimization will be applied when compiling the created expression.

parameters
ParameterExpression[]

Ein Array, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

A LambdaExpression that has the NodeType property equal to Lambda and the Body properties Parameters set to the specified values.

Gilt für:

Lambda(Expression, String, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt einen LambdaExpression durch das erstellen eines Delegattyps aus dem Ausdruckstext, den Namen für die Lambda-Funktion und eine aufzählbare Auflistung von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(System::Linq::Expressions::Expression ^ body, System::String ^ name, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, string name, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")]
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, string? name, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, string? name, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : System.Linq.Expressions.Expression * string * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")>]
static member Lambda : System.Linq.Expressions.Expression * string * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (body As Expression, name As String, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

name
String

Der Name für die Lambda-Funktion. Wird zum Ausstrahlen von Debuginformationen verwendet.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

A LambdaExpression that has the NodeType property equal to Lambda and the Body properties Parameters set to the specified values.

Attribute

Gilt für:

Lambda(Expression, Boolean, ParameterExpression[])

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt einen LambdaExpression durch das erste Erstellen eines Delegatentyps aus dem Textkörper des Ausdrucks, einen Parameter, der angibt, ob die Optimierung des Tail-Aufrufs angewendet wird, und ein Array von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(System::Linq::Expressions::Expression ^ body, bool tailCall, ... cli::array <System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, bool tailCall, params System.Linq.Expressions.ParameterExpression[] parameters);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")]
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, bool tailCall, params System.Linq.Expressions.ParameterExpression[]? parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, bool tailCall, params System.Linq.Expressions.ParameterExpression[]? parameters);
static member Lambda : System.Linq.Expressions.Expression * bool * System.Linq.Expressions.ParameterExpression[] -> System.Linq.Expressions.LambdaExpression
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")>]
static member Lambda : System.Linq.Expressions.Expression * bool * System.Linq.Expressions.ParameterExpression[] -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (body As Expression, tailCall As Boolean, ParamArray parameters As ParameterExpression()) As LambdaExpression

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

tailCall
Boolean

A Boolean that indicates if tail call optimization will be applied when compiling the created expression.

parameters
ParameterExpression[]

Ein Array, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

A LambdaExpression that has the NodeType property equal to Lambda and the Body properties Parameters set to the specified values.

Attribute

Gilt für:

Lambda(Expression, Boolean, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt einen LambdaExpression durch das erste Erstellen eines Delegatentyps aus dem Textkörper des Ausdrucks, einen Parameter, der angibt, ob die Optimierung des Tail-Aufrufs angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(System::Linq::Expressions::Expression ^ body, bool tailCall, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")]
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : System.Linq.Expressions.Expression * bool * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")>]
static member Lambda : System.Linq.Expressions.Expression * bool * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (body As Expression, tailCall As Boolean, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

tailCall
Boolean

A Boolean that indicates if tail call optimization will be applied when compiling the created expression.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

A LambdaExpression that has the NodeType property equal to Lambda and the Body properties Parameters set to the specified values.

Attribute

Gilt für:

Lambda(Type, Expression, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt eine LambdaExpression Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit einer aufzählbaren Auflistung von Parameterausdrücken.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(Type ^ delegateType, System::Linq::Expressions::Expression ^ body, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(Type delegateType, System.Linq.Expressions.Expression body, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : Type * System.Linq.Expressions.Expression * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (delegateType As Type, body As Expression, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parameter

delegateType
Type

A Type that represents a delegate signature for the lambda.

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

Ein Objekt, das einen Lambda-Ausdruck darstellt, der die NodeType Eigenschaft entsprichtLambda, und die eigenschaftenParameters, die Body auf die angegebenen Werte festgelegt sind.

Ausnahmen

delegateType oder body ist null.

- oder -

Mindestens ein Element in parameters ist null.

delegateType stellt keinen Delegattyp dar.

- oder -

body. Type represents a type that is not assignable to the return type of the delegate type represent by delegateType.

- oder -

parameters enthält nicht dieselbe Anzahl von Elementen wie die Liste der Parameter für den delegattyp dargestellt durch delegateType.

- oder -

Die Type Eigenschaft eines Elements von parameters ist vom Typ des entsprechenden Parametertyps des durch den Stellvertretungstyp dargestellten delegateTypeDelegatentyps nicht zuzuweisen.

Beispiele

Im folgenden Beispiel wird das Erstellen eines Ausdrucks veranschaulicht, der einen Lambda-Ausdruck darstellt, der dem übergebenen Argument 1 hinzufügt.

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

// A parameter for the lambda expression.
ParameterExpression paramExpr = Expression.Parameter(typeof(int), "arg");

// This expression represents a lambda expression
// that adds 1 to the parameter value.
LambdaExpression lambdaExpr = Expression.Lambda(
    Expression.Add(
        paramExpr,
        Expression.Constant(1)
    ),
    new List<ParameterExpression>() { paramExpr }
);

// Print out the expression.
Console.WriteLine(lambdaExpr);

// Compile and run the lamda expression.
// The value of the parameter is 1.
Console.WriteLine(lambdaExpr.Compile().DynamicInvoke(1));

// This code example produces the following output:
//
// arg => (arg +1)
// 2
' Add the following directive to your file:
' Imports System.Linq.Expressions  

' A parameter for the lambda expression.
Dim paramExpr As ParameterExpression = Expression.Parameter(GetType(Integer), "arg")

' This expression represents a lambda expression
' that adds 1 to the parameter value.
Dim lambdaExpr As LambdaExpression = Expression.Lambda(
        Expression.Add(
            paramExpr,
            Expression.Constant(1)
        ),
        New List(Of ParameterExpression)() From {paramExpr}
    )

' Print out the expression.
Console.WriteLine(lambdaExpr)

' Compile and run the lamda expression.
' The value of the parameter is 1.
Console.WriteLine(lambdaExpr.Compile().DynamicInvoke(1))

' This code example produces the following output:
'
' arg => (arg +1)
' 2

Hinweise

Das objekt, das von dieser Funktion zurückgegeben wird, ist vom Typ Expression<TDelegate>. Der LambdaExpression Typ wird verwendet, um das zurückgegebene Objekt darzustellen, da der konkrete Typ des Lambda-Ausdrucks zur Kompilierungszeit nicht bekannt ist.

Die Anzahl der Parameter für den delegatentyp, der durch dargestellt wirddelegateType , muss der Länge entsprechen parameters.

Die Elemente von parameters müssen auf die Parameterausdrücke in body.

Die Type Eigenschaft des resultierenden Objekts ist gleich delegateType. Wenn parameters ja, ist nulldie Parameters Eigenschaft des resultierenden Objekts eine leere Auflistung.

Gilt für:

Lambda(Expression, ParameterExpression[])

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt zunächst LambdaExpression einen Delegatentyp aus dem Ausdruckstext und ein Array von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(System::Linq::Expressions::Expression ^ body, ... cli::array <System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, params System.Linq.Expressions.ParameterExpression[] parameters);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")]
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, params System.Linq.Expressions.ParameterExpression[]? parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, params System.Linq.Expressions.ParameterExpression[]? parameters);
static member Lambda : System.Linq.Expressions.Expression * System.Linq.Expressions.ParameterExpression[] -> System.Linq.Expressions.LambdaExpression
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")>]
static member Lambda : System.Linq.Expressions.Expression * System.Linq.Expressions.ParameterExpression[] -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (body As Expression, ParamArray parameters As ParameterExpression()) As LambdaExpression

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

parameters
ParameterExpression[]

Ein Array von ParameterExpression Objekten, die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

A LambdaExpression that has the NodeType property equal to Lambda and the BodyParameters properties set to the specified values.

Attribute

Ausnahmen

body ist null.

- oder -

Mindestens ein Element von parameters sind null.

parameters enthält mehr als sechzehn Elemente.

Hinweise

Der parameters Parameter darf nicht mehr als sechszehn Elemente enthalten.

Die Elemente von parameters müssen auf die Parameterausdrücke in body.

Diese Methode erstellt einen geeigneten Delegattyp aus einem der System.Func generischen Delegaten. Anschließend wird der Delegattyp an eine der Lambda Factorymethoden übergeben, um eine LambdaExpression.

Gilt für:

Lambda(Expression, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt eine LambdaExpression durch das erste Erstellen eines Delegattyps aus dem Textkörper des Ausdrucks und eine aufzählbare Auflistung von Parameterausdrücken. Sie kann verwendet werden, wenn der Delegattyp zur Kompilierungszeit nicht bekannt ist.

public:
 static System::Linq::Expressions::LambdaExpression ^ Lambda(System::Linq::Expressions::Expression ^ body, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")]
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
public static System.Linq.Expressions.LambdaExpression Lambda(System.Linq.Expressions.Expression body, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : System.Linq.Expressions.Expression * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Delegate creation requires dynamic code generation.")>]
static member Lambda : System.Linq.Expressions.Expression * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.LambdaExpression
Public Shared Function Lambda (body As Expression, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

A LambdaExpression that has the NodeType property equal to Lambda and the Body properties Parameters set to the specified values.

Attribute

Gilt für:

Lambda<TDelegate>(Expression, String, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt eine Expression<TDelegate> Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit dem Namen für die Lambda-Funktion und einer aufzählbaren Auflistung von Parameterausdrücken.

public:
generic <typename TDelegate>
 static System::Linq::Expressions::Expression<TDelegate> ^ Lambda(System::Linq::Expressions::Expression ^ body, System::String ^ name, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, string name, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, string? name, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : System.Linq.Expressions.Expression * string * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.Expression<'Delegate>
Public Shared Function Lambda(Of TDelegate) (body As Expression, name As String, parameters As IEnumerable(Of ParameterExpression)) As Expression(Of TDelegate)

Typparameter

TDelegate

Der Delegattyp.

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

name
String

Der Name der Lambda-Funktion. Wird zum Generieren von Debuginformationen verwendet.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

Ein Expression<TDelegate> Wert, der die NodeType Eigenschaft entsprichtLambda, und die eigenschaftenParameters, die Body auf die angegebenen Werte festgelegt sind.

Gilt für:

Lambda<TDelegate>(Expression, Boolean, ParameterExpression[])

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt einen Expression<TDelegate> Ort, an dem der Delegattyp zur Kompilierungszeit bekannt ist, mit einem Parameter, der angibt, ob die Endaufrufoptimierung angewendet wird, und ein Array von Parameterausdrücken.

public:
generic <typename TDelegate>
 static System::Linq::Expressions::Expression<TDelegate> ^ Lambda(System::Linq::Expressions::Expression ^ body, bool tailCall, ... cli::array <System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, bool tailCall, params System.Linq.Expressions.ParameterExpression[] parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, bool tailCall, params System.Linq.Expressions.ParameterExpression[]? parameters);
static member Lambda : System.Linq.Expressions.Expression * bool * System.Linq.Expressions.ParameterExpression[] -> System.Linq.Expressions.Expression<'Delegate>
Public Shared Function Lambda(Of TDelegate) (body As Expression, tailCall As Boolean, ParamArray parameters As ParameterExpression()) As Expression(Of TDelegate)

Typparameter

TDelegate

Der Delegattyp.

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

tailCall
Boolean

A Boolean that indicates if tail call optimization will be applied when compiling the created expression.

parameters
ParameterExpression[]

Ein Array, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

Ein Expression<TDelegate> Wert, der die NodeType Eigenschaft entsprichtLambda, und die eigenschaftenParameters, die Body auf die angegebenen Werte festgelegt sind.

Gilt für:

Lambda<TDelegate>(Expression, String, Boolean, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt einen Expression<TDelegate> Ort, an dem der Delegattyp zur Kompilierungszeit bekannt ist, mit dem Namen für die Lambda-Funktion, ein Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken.

public:
generic <typename TDelegate>
 static System::Linq::Expressions::Expression<TDelegate> ^ Lambda(System::Linq::Expressions::Expression ^ body, System::String ^ name, bool tailCall, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, string name, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, string? name, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : System.Linq.Expressions.Expression * string * bool * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.Expression<'Delegate>
Public Shared Function Lambda(Of TDelegate) (body As Expression, name As String, tailCall As Boolean, parameters As IEnumerable(Of ParameterExpression)) As Expression(Of TDelegate)

Typparameter

TDelegate

Der Delegattyp.

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

name
String

Der Name der Lambda-Funktion. Wird zum Generieren von Debuginformationen verwendet.

tailCall
Boolean

A Boolean that indicates if tail call optimization will be applied when compiling the created expression.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

Ein Expression<TDelegate> Wert, der die NodeType Eigenschaft entsprichtLambda, und die eigenschaftenParameters, die Body auf die angegebenen Werte festgelegt sind.

Gilt für:

Lambda<TDelegate>(Expression, ParameterExpression[])

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt eine Expression<TDelegate> Stelle, an der der Delegattyp zur Kompilierungszeit mit einem Array von Parameterausdrücken bekannt ist.

public:
generic <typename TDelegate>
 static System::Linq::Expressions::Expression<TDelegate> ^ Lambda(System::Linq::Expressions::Expression ^ body, ... cli::array <System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, params System.Linq.Expressions.ParameterExpression[] parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, params System.Linq.Expressions.ParameterExpression[]? parameters);
static member Lambda : System.Linq.Expressions.Expression * System.Linq.Expressions.ParameterExpression[] -> System.Linq.Expressions.Expression<'Delegate>
Public Shared Function Lambda(Of TDelegate) (body As Expression, ParamArray parameters As ParameterExpression()) As Expression(Of TDelegate)

Typparameter

TDelegate

Ein Delegattyp.

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

parameters
ParameterExpression[]

Ein Array von ParameterExpression Objekten, die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

Ein Expression<TDelegate> Wert, der die NodeType Eigenschaft entsprichtLambda, und die eigenschaftenParameters, die Body auf die angegebenen Werte festgelegt sind.

Ausnahmen

body ist null.

- oder -

Mindestens ein Element in parameters ist null.

TDelegate ist kein Delegattyp.

- oder -

body. Der Typ stellt einen Typ dar, der dem Rückgabetyp von TDelegatenicht zugewiesen werden kann.

- oder -

parameters enthält nicht dieselbe Anzahl von Elementen wie die Liste der Parameter für TDelegate.

- oder -

Die Type Eigenschaft eines Elements von parameters ist vom Typ des entsprechenden Parametertyps nicht TDelegatezuzuweisen.

Hinweise

Die Anzahl der Parameter für den Delegattyp TDelegate muss der Anzahl der Elemente entsprechen.parameters

Die Elemente von parameters müssen auf die Parameterausdrückebody verweisen.

Die Type Eigenschaft des resultierenden Objekts stellt den Typ TDelegatedar. Wenn parameters ja, ist nulldie Parameters Eigenschaft des resultierenden Objekts eine leere Auflistung.

Gilt für:

Lambda<TDelegate>(Expression, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt eine Expression<TDelegate> Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit einer aufzählbaren Auflistung von Parameterausdrücken.

public:
generic <typename TDelegate>
 static System::Linq::Expressions::Expression<TDelegate> ^ Lambda(System::Linq::Expressions::Expression ^ body, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : System.Linq.Expressions.Expression * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.Expression<'Delegate>
Public Shared Function Lambda(Of TDelegate) (body As Expression, parameters As IEnumerable(Of ParameterExpression)) As Expression(Of TDelegate)

Typparameter

TDelegate

Ein Delegattyp.

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

Ein Expression<TDelegate> Wert, der die NodeType Eigenschaft entsprichtLambda, und die eigenschaftenParameters, die Body auf die angegebenen Werte festgelegt sind.

Ausnahmen

body ist null.

- oder -

Mindestens ein Element in parameters ist null.

TDelegate ist kein Delegattyp.

- oder -

body. Der Typ stellt einen Typ dar, der dem Rückgabetyp von TDelegatenicht zugewiesen werden kann.

- oder -

parameters enthält nicht dieselbe Anzahl von Elementen wie die Liste der Parameter für TDelegate.

- oder -

Die Type Eigenschaft eines Elements von parameters ist vom Typ des entsprechenden Parametertyps nicht TDelegatezuzuweisen.

Hinweise

Die Anzahl der Parameter für den Delegattyp TDelegate muss der Anzahl der Elemente entsprechen.parameters

Die Elemente von parameters müssen auf die Parameterausdrücke in body.

Die Type Eigenschaft des resultierenden Objekts stellt den Typ TDelegatedar. Wenn parameters ja, ist nulldie Parameters Eigenschaft des resultierenden Objekts eine leere Auflistung.

Gilt für:

Lambda<TDelegate>(Expression, Boolean, IEnumerable<ParameterExpression>)

Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs
Quelle:
LambdaExpression.cs

Erstellt eine Expression<TDelegate> Stelle, an der der Delegattyp zur Kompilierungszeit bekannt ist, mit einem Parameter, der angibt, ob die Tail-Aufrufoptimierung angewendet wird, und eine aufzählbare Auflistung von Parameterausdrücken.

public:
generic <typename TDelegate>
 static System::Linq::Expressions::Expression<TDelegate> ^ Lambda(System::Linq::Expressions::Expression ^ body, bool tailCall, System::Collections::Generic::IEnumerable<System::Linq::Expressions::ParameterExpression ^> ^ parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression> parameters);
public static System.Linq.Expressions.Expression<TDelegate> Lambda<TDelegate>(System.Linq.Expressions.Expression body, bool tailCall, System.Collections.Generic.IEnumerable<System.Linq.Expressions.ParameterExpression>? parameters);
static member Lambda : System.Linq.Expressions.Expression * bool * seq<System.Linq.Expressions.ParameterExpression> -> System.Linq.Expressions.Expression<'Delegate>
Public Shared Function Lambda(Of TDelegate) (body As Expression, tailCall As Boolean, parameters As IEnumerable(Of ParameterExpression)) As Expression(Of TDelegate)

Typparameter

TDelegate

Der Delegattyp.

Parameter

body
Expression

Eine Expression , die die Body Eigenschaft gleich festlegen soll.

tailCall
Boolean

A Boolean that indicates if tail call optimization will be applied when compiling the created expression.

parameters
IEnumerable<ParameterExpression>

Ein IEnumerable<T> Objekt, das Objekte enthält ParameterExpression , die zum Auffüllen der Parameters Auflistung verwendet werden sollen.

Gibt zurück

Ein Expression<TDelegate> Wert, der die NodeType Eigenschaft entsprichtLambda, und die eigenschaftenParameters, die Body auf die angegebenen Werte festgelegt sind.

Gilt für: