Udostępnij za pośrednictwem


Expression.Lambda Metoda

Definicja

Tworzy drzewo wyrażeń reprezentujące wyrażenie lambda.

Przeciążenia

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

LambdaExpression Tworzy miejsce, w którym typ delegata jest znany w czasie kompilacji, z nazwą lambda, parametrem wskazującym, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz wyliczenie kolekcji wyrażeń parametrów.

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

Tworzy miejsce LambdaExpression , w którym typ delegata jest znany w czasie kompilacji, z nazwą lambda i wyliczalną kolekcją wyrażeń parametrów.

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

Tworzy miejsce LambdaExpression , w którym typ delegata jest znany w czasie kompilacji, z parametrem wskazującym, czy zostanie zastosowana optymalizacja wywołań końcowych, oraz wyliczenie kolekcji wyrażeń parametrów.

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

Tworzy element LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia, nazwy lambda, parametru wskazującego, czy zostanie zastosowana optymalizacja wywołań końcowych, oraz wyliczenie kolekcji wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

Lambda(Type, Expression, ParameterExpression[])

Tworzy miejsce LambdaExpression , w którym typ delegata jest znany w czasie kompilacji, z tablicą wyrażeń parametrów.

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

Tworzy miejsce LambdaExpression , w którym typ delegata jest znany w czasie kompilacji, z parametrem wskazującym, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz tablica wyrażeń parametrów.

Lambda(Expression, String, IEnumerable<ParameterExpression>)

Tworzy obiekt LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia, nazwy wyrażenia lambda i wyliczalnej kolekcji wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

Lambda(Expression, Boolean, ParameterExpression[])

Tworzy obiekt LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia, parametru wskazującego, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz tablica wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

Lambda(Expression, Boolean, IEnumerable<ParameterExpression>)

Tworzy obiekt LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia, parametru wskazującego, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz wyliczenie kolekcji wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

Lambda(Type, Expression, IEnumerable<ParameterExpression>)

Tworzy miejsce LambdaExpression , w którym typ delegata jest znany w czasie kompilacji, z wyliczalną kolekcją wyrażeń parametrów.

Lambda(Expression, ParameterExpression[])

Tworzy obiekt LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia i tablicy wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

Lambda(Expression, IEnumerable<ParameterExpression>)

Tworzy obiekt LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia i wyliczalnej kolekcji wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

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

Tworzy miejsce Expression<TDelegate> , w którym typ delegata jest znany w czasie kompilacji, z nazwą lambda i wyliczalną kolekcją wyrażeń parametrów.

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

Tworzy miejsce Expression<TDelegate> , w którym typ delegata jest znany w czasie kompilacji, z parametrem wskazującym, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz tablica wyrażeń parametrów.

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

Tworzy miejsce Expression<TDelegate> , w którym typ delegata jest znany w czasie kompilacji, z nazwą lambda, parametrem wskazującym, czy zostanie zastosowana optymalizacja wywołań końcowych i wyliczalna kolekcja wyrażeń parametrów.

Lambda<TDelegate>(Expression, ParameterExpression[])

Tworzy miejsce Expression<TDelegate> , w którym typ delegata jest znany w czasie kompilacji, z tablicą wyrażeń parametrów.

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

Tworzy miejsce Expression<TDelegate> , w którym typ delegata jest znany w czasie kompilacji, z wyliczalną kolekcją wyrażeń parametrów.

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

Tworzy miejsce Expression<TDelegate> , w którym typ delegata jest znany w czasie kompilacji, z parametrem wskazującym, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz wyliczenie kolekcji wyrażeń parametrów.

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

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

LambdaExpression Tworzy miejsce, w którym typ delegata jest znany w czasie kompilacji, z nazwą lambda, parametrem wskazującym, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz wyliczenie kolekcji wyrażeń parametrów.

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

Parametry

delegateType
Type

Reprezentujący Type podpis delegata dla wyrażenia lambda.

body
Expression

Element Expression do ustawiania Body właściwości równej.

name
String

Nazwa lambda. Służy do emitowania informacji debugowania.

tailCall
Boolean

Element Boolean wskazujący, czy podczas kompilowania utworzonego wyrażenia zostanie zastosowana optymalizacja wywołań końcowych.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość LambdaExpression , która ma NodeType właściwość równą lambda i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

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

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy miejsce LambdaExpression , w którym typ delegata jest znany w czasie kompilacji, z nazwą lambda i wyliczalną kolekcją wyrażeń parametrów.

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

Parametry

delegateType
Type

Reprezentujący Type podpis delegata dla wyrażenia lambda.

body
Expression

Element Expression do ustawiania Body właściwości równej.

name
String

Nazwa lambda. Służy do emitowania informacji debugowania.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość LambdaExpression , która ma NodeType właściwość równą lambda i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

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

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy miejsce LambdaExpression , w którym typ delegata jest znany w czasie kompilacji, z parametrem wskazującym, czy zostanie zastosowana optymalizacja wywołań końcowych, oraz wyliczenie kolekcji wyrażeń parametrów.

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

Parametry

delegateType
Type

Reprezentujący Type podpis delegata dla wyrażenia lambda.

body
Expression

Element Expression do ustawiania Body właściwości równej.

tailCall
Boolean

Element Boolean wskazujący, czy podczas kompilowania utworzonego wyrażenia zostanie zastosowana optymalizacja wywołań końcowych.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość LambdaExpression , która ma NodeType właściwość równą lambda i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

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

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy element LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia, nazwy lambda, parametru wskazującego, czy zostanie zastosowana optymalizacja wywołań końcowych, oraz wyliczenie kolekcji wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

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);
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
Public Shared Function Lambda (body As Expression, name As String, tailCall As Boolean, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parametry

body
Expression

Element Expression do ustawiania Body właściwości równej.

name
String

Nazwa lambda. Służy do emitowania informacji debugowania.

tailCall
Boolean

Element Boolean wskazujący, czy podczas kompilowania utworzonego wyrażenia zostanie zastosowana optymalizacja wywołań końcowych.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość LambdaExpression , która ma NodeType właściwość równą lambda i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

Lambda(Type, Expression, ParameterExpression[])

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy miejsce LambdaExpression , w którym typ delegata jest znany w czasie kompilacji, z tablicą wyrażeń parametrów.

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

Parametry

delegateType
Type

Element Type reprezentujący podpis delegata dla wyrażenia lambda.

body
Expression

Element Expression do ustawiania Body właściwości równej.

parameters
ParameterExpression[]

Tablica ParameterExpression obiektów do użycia w celu wypełnienia kolekcji Parameters .

Zwraca

Obiekt reprezentujący wyrażenie lambda, które ma NodeType właściwość równą Lambda i Body właściwości i Parameters ustawione na określone wartości.

Wyjątki

delegateType lub body ma wartość null.

-lub-

Co najmniej jeden element w pliku parameters to null.

delegateType nie reprezentuje typu delegata.

-lub-

body. Typ reprezentuje typ, który nie można przypisać do zwracanego typu delegata reprezentowanego przez delegateType.

-lub-

parameters nie zawiera tej samej liczby elementów, co lista parametrów dla typu delegata reprezentowanego przez delegateType.

-lub-

Właściwość Type elementu parameters elementu nie jest przypisywana z typu odpowiedniego typu parametru typu delegata reprezentowanego przez delegateType.

Uwagi

Obiekt zwracany z tej funkcji jest typu Expression<TDelegate>. Typ LambdaExpression jest używany do reprezentowania zwróconego obiektu, ponieważ konkretny typ wyrażenia lambda nie jest znany w czasie kompilacji.

Liczba parametrów typu delegata reprezentowanego przez delegateType element musi być równa długości parameters.

Elementy parameters elementu muszą być odwołaniami równymi wyrażeniom parametrów w elemencie body.

Właściwość Type wynikowego obiektu jest równa delegateType. Jeśli parameters parametr ma nullwartość , Parameters właściwość wynikowego obiektu jest pustą kolekcją.

Dotyczy

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

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy miejsce LambdaExpression , w którym typ delegata jest znany w czasie kompilacji, z parametrem wskazującym, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz tablica wyrażeń parametrów.

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

Parametry

delegateType
Type

Reprezentujący Type podpis delegata dla wyrażenia lambda.

body
Expression

Element Expression do ustawiania Body właściwości równej.

tailCall
Boolean

Element Boolean wskazujący, czy podczas kompilowania utworzonego wyrażenia zostanie zastosowana optymalizacja wywołań końcowych.

parameters
ParameterExpression[]

Tablica zawierająca ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość LambdaExpression , która ma NodeType właściwość równą lambda i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

Lambda(Expression, String, IEnumerable<ParameterExpression>)

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy obiekt LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia, nazwy wyrażenia lambda i wyliczalnej kolekcji wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

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);
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
Public Shared Function Lambda (body As Expression, name As String, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parametry

body
Expression

Element Expression do ustawiania Body właściwości równej.

name
String

Nazwa lambda. Służy do emitowania informacji debugowania.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość LambdaExpression , która ma NodeType właściwość równą lambda i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

Lambda(Expression, Boolean, ParameterExpression[])

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy obiekt LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia, parametru wskazującego, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz tablica wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

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);
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
Public Shared Function Lambda (body As Expression, tailCall As Boolean, ParamArray parameters As ParameterExpression()) As LambdaExpression

Parametry

body
Expression

Element Expression do ustawiania Body właściwości równej.

tailCall
Boolean

Element Boolean wskazujący, czy podczas kompilowania utworzonego wyrażenia zostanie zastosowana optymalizacja wywołań końcowych.

parameters
ParameterExpression[]

Tablica zawierająca ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość LambdaExpression , która ma NodeType właściwość równą lambda i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

Lambda(Expression, Boolean, IEnumerable<ParameterExpression>)

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy obiekt LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia, parametru wskazującego, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz wyliczenie kolekcji wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

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);
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
Public Shared Function Lambda (body As Expression, tailCall As Boolean, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parametry

body
Expression

Element Expression do ustawiania Body właściwości równej.

tailCall
Boolean

Element Boolean wskazujący, czy podczas kompilowania utworzonego wyrażenia zostanie zastosowana optymalizacja wywołań końcowych.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość LambdaExpression , która ma NodeType właściwość równą lambda i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

Lambda(Type, Expression, IEnumerable<ParameterExpression>)

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy miejsce LambdaExpression , w którym typ delegata jest znany w czasie kompilacji, z wyliczalną kolekcją wyrażeń parametrów.

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

Parametry

delegateType
Type

Element Type reprezentujący podpis delegata dla wyrażenia lambda.

body
Expression

Element Expression do ustawiania Body właściwości równej.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Obiekt reprezentujący wyrażenie lambda, które ma NodeType właściwość równą Lambda i Body właściwości i Parameters ustawione na określone wartości.

Wyjątki

delegateType lub body ma wartość null.

-lub-

Co najmniej jeden element w pliku parameters to null.

delegateType nie reprezentuje typu delegata.

-lub-

body. Typ reprezentuje typ, który nie można przypisać do zwracanego typu delegata reprezentowanego przez delegateType.

-lub-

parameters nie zawiera tej samej liczby elementów, co lista parametrów dla typu delegata reprezentowanego przez delegateType.

-lub-

Właściwość Type elementu parameters elementu nie jest przypisywana z typu odpowiedniego typu parametru typu delegata reprezentowanego przez delegateType.

Przykłady

W poniższym przykładzie pokazano, jak utworzyć wyrażenie reprezentujące wyrażenie lambda, które dodaje 1 do przekazanego argumentu.

// 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

Uwagi

Obiekt zwracany z tej funkcji jest typu Expression<TDelegate>. Typ LambdaExpression jest używany do reprezentowania zwróconego obiektu, ponieważ konkretny typ wyrażenia lambda nie jest znany w czasie kompilacji.

Liczba parametrów typu delegata reprezentowanego przezdelegateType element musi być równa długości parameters.

Elementy parameters elementu muszą być odwołaniami równymi wyrażeniom parametrów w elemencie body.

Właściwość Type wynikowego obiektu jest równa delegateType. Jeśli parameters parametr ma nullwartość , Parameters właściwość wynikowego obiektu jest pustą kolekcją.

Dotyczy

Lambda(Expression, ParameterExpression[])

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy obiekt LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia i tablicy wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

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);
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
Public Shared Function Lambda (body As Expression, ParamArray parameters As ParameterExpression()) As LambdaExpression

Parametry

body
Expression

Element Expression do ustawiania Body właściwości równej.

parameters
ParameterExpression[]

Tablica ParameterExpression obiektów do użycia w celu wypełnienia kolekcji Parameters .

Zwraca

Właściwość LambdaExpression , która ma właściwość równą LambdaNodeType i Body właściwości i Parameters ustawione na określone wartości.

Wyjątki

body to null.

-lub-

Co najmniej jeden element elementu parameters to null.

parameters zawiera więcej niż szesnaście elementów.

Uwagi

Parametr parameters nie może zawierać więcej niż szesnastu elementów.

Elementy parameters elementu muszą być odwołaniami równymi wyrażeniom parametrów w elemencie body.

Ta metoda tworzy odpowiedni typ delegata z jednego z System.Func delegatów ogólnych. Następnie przekazuje typ delegata do jednej z Lambda metod fabryki, aby utworzyć element LambdaExpression.

Dotyczy

Lambda(Expression, IEnumerable<ParameterExpression>)

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy obiekt LambdaExpression przez utworzenie typu delegata na podstawie treści wyrażenia i wyliczalnej kolekcji wyrażeń parametrów. Może być używany, gdy typ delegata nie jest znany w czasie kompilacji.

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);
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
Public Shared Function Lambda (body As Expression, parameters As IEnumerable(Of ParameterExpression)) As LambdaExpression

Parametry

body
Expression

Element Expression do ustawiania Body właściwości równej.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość LambdaExpression , która ma NodeType właściwość równą lambda i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

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

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy miejsce Expression<TDelegate> , w którym typ delegata jest znany w czasie kompilacji, z nazwą lambda i wyliczalną kolekcją wyrażeń parametrów.

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)

Parametry typu

TDelegate

Typ delegata.

Parametry

body
Expression

Element Expression do ustawiania Body właściwości równej.

name
String

Nazwa lambda. Służy do generowania informacji o debugowaniu.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość Expression<TDelegate> , która ma właściwość równą LambdaNodeType i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

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

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy miejsce Expression<TDelegate> , w którym typ delegata jest znany w czasie kompilacji, z parametrem wskazującym, czy optymalizacja wywołań końcowych zostanie zastosowana, oraz tablica wyrażeń parametrów.

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)

Parametry typu

TDelegate

Typ delegata.

Parametry

body
Expression

Element Expression do ustawiania Body właściwości równej.

tailCall
Boolean

Element Boolean wskazujący, czy podczas kompilowania utworzonego wyrażenia zostanie zastosowana optymalizacja wywołań końcowych.

parameters
ParameterExpression[]

Tablica zawierająca ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość Expression<TDelegate> , która ma właściwość równą LambdaNodeType i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

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

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Tworzy miejsce Expression<TDelegate> , w którym typ delegata jest znany w czasie kompilacji, z nazwą lambda, parametrem wskazującym, czy zostanie zastosowana optymalizacja wywołań końcowych i wyliczalna kolekcja wyrażeń parametrów.

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)

Parametry typu

TDelegate

Typ delegata.

Parametry

body
Expression

Element Expression do ustawiania Body właściwości równej.

name
String

Nazwa lambda. Służy do generowania informacji o debugowaniu.

tailCall
Boolean

Element Boolean wskazujący, czy podczas kompilowania utworzonego wyrażenia zostanie zastosowana optymalizacja wywołań końcowych.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

Właściwość Expression<TDelegate> , która ma właściwość równą LambdaNodeType i Body właściwości i Parameters ustawione na określone wartości.

Dotyczy

Lambda<TDelegate>(Expression, ParameterExpression[])

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Expression<TDelegate> Tworzy miejsce, w którym typ delegata jest znany w czasie kompilacji z tablicą wyrażeń parametrów.

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)

Parametry typu

TDelegate

Typ delegata.

Parametry

body
Expression

Element Expression do ustawiania Body właściwości równej.

parameters
ParameterExpression[]

Tablica ParameterExpression obiektów do użycia w celu wypełnienia kolekcji Parameters .

Zwraca

WłaściwośćExpression<TDelegate>, która ma właściwość równą LambdaNodeType właściwościom i i BodyParameters ustawioną na określone wartości.

Wyjątki

body to null.

-lub-

Co najmniej jeden element w pliku parameters to null.

TDelegate nie jest typem delegata.

-lub-

body. Typ reprezentuje typ, który nie można przypisać do zwracanego TDelegatetypu .

-lub-

parameters program nie zawiera tej samej liczby elementów, co lista parametrów dla elementu TDelegate.

-lub-

Właściwość Type elementu parameters elementu nie jest przypisywana z typu odpowiadającego mu typu parametru TDelegate.

Uwagi

Liczba parametrów typu TDelegate delegata musi być równa liczbie elementów w elemecie parameters.

Elementy elementu parameters muszą być odwołaniami równymi wyrażeniom parametrów wbody.

Właściwość Type wynikowego obiektu reprezentuje typ TDelegate. Jeśli parameters jest to null, Parameters właściwość wynikowego obiektu jest pustą kolekcją.

Dotyczy

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

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Expression<TDelegate> Tworzy miejsce, w którym typ delegata jest znany w czasie kompilacji z wyliczalną kolekcją wyrażeń parametrów.

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)

Parametry typu

TDelegate

Typ delegata.

Parametry

body
Expression

Element , Expression aby ustawić właściwość równą Body .

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

WłaściwośćExpression<TDelegate>, która ma właściwość równą LambdaNodeType właściwościom i i BodyParameters ustawioną na określone wartości.

Wyjątki

body to null.

-lub-

Co najmniej jeden element w pliku parameters to null.

TDelegate nie jest typem delegata.

-lub-

body. Typ reprezentuje typ, który nie można przypisać do zwracanego TDelegatetypu .

-lub-

parameters nie zawiera tej samej liczby elementów co lista parametrów dla TDelegateelementu .

-lub-

Właściwość Type elementu elementu parameters jest niemożliwa do przypisania z typu odpowiadającego mu typu parametru TDelegate.

Uwagi

Liczba parametrów typu TDelegate delegata musi być równa liczbie elementów w elemecie parameters.

Elementy elementu parameters muszą być odwołaniami równymi wyrażeniom parametrów w elemencie body.

Właściwość Type wynikowego obiektu reprezentuje typ TDelegate. Jeśli parameters jest to null, Parameters właściwość wynikowego obiektu jest pustą kolekcją.

Dotyczy

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

Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs
Źródło:
LambdaExpression.cs

Expression<TDelegate> Tworzy miejsce, w którym typ delegata jest znany w czasie kompilacji, z parametrem wskazującym, czy zostanie zastosowana optymalizacja wywołań ogona, oraz wyliczenie kolekcji wyrażeń parametrów.

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)

Parametry typu

TDelegate

Typ delegata.

Parametry

body
Expression

Element , Expression aby ustawić właściwość równą Body .

tailCall
Boolean

Element Boolean wskazujący, czy podczas kompilowania utworzonego wyrażenia zostanie zastosowana optymalizacja wywołań ogona.

parameters
IEnumerable<ParameterExpression>

Obiekt IEnumerable<T> zawierający ParameterExpression obiekty używane do wypełniania kolekcji Parameters .

Zwraca

WłaściwośćExpression<TDelegate>, która ma właściwość równą LambdaNodeType właściwościom i i BodyParameters ustawioną na określone wartości.

Dotyczy