Expression.Invoke Yöntem

Tanım

oluşturur InvocationExpression.

Aşırı Yüklemeler

Invoke(Expression, Expression[])

InvocationExpression Bağımsız değişken ifadeleri listesine bir temsilci veya lambda ifadesi uygulayan bir oluşturur.

Invoke(Expression, IEnumerable<Expression>)

InvocationExpression Bağımsız değişken ifadeleri listesine bir temsilci veya lambda ifadesi uygulayan bir oluşturur.

Invoke(Expression, Expression[])

Kaynak:
InvocationExpression.cs
Kaynak:
InvocationExpression.cs
Kaynak:
InvocationExpression.cs

InvocationExpression Bağımsız değişken ifadeleri listesine bir temsilci veya lambda ifadesi uygulayan bir oluşturur.

public:
 static System::Linq::Expressions::InvocationExpression ^ Invoke(System::Linq::Expressions::Expression ^ expression, ... cli::array <System::Linq::Expressions::Expression ^> ^ arguments);
public static System.Linq.Expressions.InvocationExpression Invoke (System.Linq.Expressions.Expression expression, params System.Linq.Expressions.Expression[] arguments);
public static System.Linq.Expressions.InvocationExpression Invoke (System.Linq.Expressions.Expression expression, params System.Linq.Expressions.Expression[]? arguments);
static member Invoke : System.Linq.Expressions.Expression * System.Linq.Expressions.Expression[] -> System.Linq.Expressions.InvocationExpression
Public Shared Function Invoke (expression As Expression, ParamArray arguments As Expression()) As InvocationExpression

Parametreler

expression
Expression

Expression Uygulanacak temsilci veya lambda ifadesini temsil eden.

arguments
Expression[]

Temsilci veya lambda ifadesinin uygulandığı bağımsız değişkenleri temsil eden bir nesne dizisi Expression .

Döndürülenler

InvocationExpression Belirtilen temsilci veya lambda ifadesini sağlanan bağımsız değişkenlere uygulayan bir.

Özel durumlar

expression, null değeridir.

expression. Tür, bir temsilci türünü veya bir Expression<TDelegate>öğesini temsil etmez.

-veya-

Type öğesinin arguments özelliği, tarafından expressiontemsil edilen temsilcinin karşılık gelen parametresinin türüne atanamaz.

arguments , tarafından expressiontemsil edilen temsilcinin parametre listesiyle aynı sayıda öğe içermez.

Örnekler

Aşağıdaki örnekte, belirtilen bağımsız değişkenlerle lambda ifadesinin çağrılacağını temsil eden bir InvocationExpression oluşturmak için yönteminin nasıl kullanılacağı Invoke(Expression, Expression[]) gösterilmektedir.

System.Linq.Expressions.Expression<Func<int, int, bool>> largeSumTest =
    (num1, num2) => (num1 + num2) > 1000;

// Create an InvocationExpression that represents applying
// the arguments '539' and '281' to the lambda expression 'largeSumTest'.
System.Linq.Expressions.InvocationExpression invocationExpression =
    System.Linq.Expressions.Expression.Invoke(
        largeSumTest,
        System.Linq.Expressions.Expression.Constant(539),
        System.Linq.Expressions.Expression.Constant(281));

Console.WriteLine(invocationExpression.ToString());

// This code produces the following output:
//
// Invoke((num1, num2) => ((num1 + num2) > 1000),539,281)
Dim largeSumTest As System.Linq.Expressions.Expression(Of System.Func(Of Integer, Integer, Boolean)) = _
    Function(num1, num2) (num1 + num2) > 1000

' Create an InvocationExpression that represents applying
' the arguments '539' and '281' to the lambda expression 'largeSumTest'.
Dim invocationExpression As System.Linq.Expressions.InvocationExpression = _
    System.Linq.Expressions.Expression.Invoke( _
        largeSumTest, _
        System.Linq.Expressions.Expression.Constant(539), _
        System.Linq.Expressions.Expression.Constant(281))

Console.WriteLine(invocationExpression.ToString())

' This code produces the following output:
'
' Invoke((num1, num2) => ((num1 + num2) > 1000),539,281)

Açıklamalar

Sonuçta TypeInvocationExpression elde edilen özelliği, tarafından expressiontemsil edilen temsilcinin dönüş türünü temsil eder. Türü.

sonuçta Arguments elde edilen InvocationExpression özelliği ise arguments boş olur null. Aksi takdirde, bu Expression nesnelerden bazılarının tırnak içine alınması dışında ile aynı öğeleri arguments içerir.

Not

Bir öğe yalnızca tarafından temsil expression edilen temsilcinin karşılık gelen parametresi türündeyse Expressiontırnak içine alınır. Alıntı, öğenin bir Quote düğümde sarmalanması anlamına gelir. Sonuçta elde edilen düğüm, özelliği öğesi olan bir UnaryExpressionOperand düğümdür arguments.

Şunlara uygulanır

Invoke(Expression, IEnumerable<Expression>)

Kaynak:
InvocationExpression.cs
Kaynak:
InvocationExpression.cs
Kaynak:
InvocationExpression.cs

InvocationExpression Bağımsız değişken ifadeleri listesine bir temsilci veya lambda ifadesi uygulayan bir oluşturur.

public:
 static System::Linq::Expressions::InvocationExpression ^ Invoke(System::Linq::Expressions::Expression ^ expression, System::Collections::Generic::IEnumerable<System::Linq::Expressions::Expression ^> ^ arguments);
public static System.Linq.Expressions.InvocationExpression Invoke (System.Linq.Expressions.Expression expression, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression> arguments);
public static System.Linq.Expressions.InvocationExpression Invoke (System.Linq.Expressions.Expression expression, System.Collections.Generic.IEnumerable<System.Linq.Expressions.Expression>? arguments);
static member Invoke : System.Linq.Expressions.Expression * seq<System.Linq.Expressions.Expression> -> System.Linq.Expressions.InvocationExpression
Public Shared Function Invoke (expression As Expression, arguments As IEnumerable(Of Expression)) As InvocationExpression

Parametreler

expression
Expression

Expression Uygulanacak temsilci veya lambda ifadesini temsil eden.

arguments
IEnumerable<Expression>

IEnumerable<T> Temsilci veya lambda ifadesinin uygulandığı bağımsız değişkenleri temsil eden nesneleri içeren Expression bir.

Döndürülenler

InvocationExpression Belirtilen temsilci veya lambda ifadesini sağlanan bağımsız değişkenlere uygulayan bir.

Özel durumlar

expression, null değeridir.

expression. Tür, bir temsilci türünü veya bir Expression<TDelegate>öğesini temsil etmez.

-veya-

Type öğesinin arguments özelliği, tarafından expressiontemsil edilen temsilcinin karşılık gelen parametresinin türüne atanamaz.

arguments , tarafından expressiontemsil edilen temsilcinin parametre listesiyle aynı sayıda öğe içermez.

Örnekler

Aşağıdaki örnekte, belirtilen bağımsız değişkenlerle lambda ifadesinin çağrılacağını temsil eden bir InvocationExpression oluşturmak için yönteminin nasıl kullanılacağı Invoke(Expression, Expression[]) gösterilmektedir.

System.Linq.Expressions.Expression<Func<int, int, bool>> largeSumTest =
    (num1, num2) => (num1 + num2) > 1000;

// Create an InvocationExpression that represents applying
// the arguments '539' and '281' to the lambda expression 'largeSumTest'.
System.Linq.Expressions.InvocationExpression invocationExpression =
    System.Linq.Expressions.Expression.Invoke(
        largeSumTest,
        System.Linq.Expressions.Expression.Constant(539),
        System.Linq.Expressions.Expression.Constant(281));

Console.WriteLine(invocationExpression.ToString());

// This code produces the following output:
//
// Invoke((num1, num2) => ((num1 + num2) > 1000),539,281)
Dim largeSumTest As System.Linq.Expressions.Expression(Of System.Func(Of Integer, Integer, Boolean)) = _
    Function(num1, num2) (num1 + num2) > 1000

' Create an InvocationExpression that represents applying
' the arguments '539' and '281' to the lambda expression 'largeSumTest'.
Dim invocationExpression As System.Linq.Expressions.InvocationExpression = _
    System.Linq.Expressions.Expression.Invoke( _
        largeSumTest, _
        System.Linq.Expressions.Expression.Constant(539), _
        System.Linq.Expressions.Expression.Constant(281))

Console.WriteLine(invocationExpression.ToString())

' This code produces the following output:
'
' Invoke((num1, num2) => ((num1 + num2) > 1000),539,281)

Açıklamalar

Sonuçta TypeInvocationExpression elde edilen özelliği, tarafından expressiontemsil edilen temsilcinin dönüş türünü temsil eder. Türü.

sonuçta Arguments elde edilen InvocationExpression özelliği ise arguments boş olur null. Aksi takdirde, bu Expression nesnelerden bazılarının tırnak içine alınması dışında ile aynı öğeleri arguments içerir.

Not

Bir öğe yalnızca tarafından temsil expression edilen temsilcinin karşılık gelen parametresi türündeyse Expressiontırnak içine alınır. Alıntı, öğenin bir Quote düğümde sarmalanması anlamına gelir. Sonuçta elde edilen düğüm, özelliği öğesi olan bir UnaryExpressionOperand düğümdür arguments.

Şunlara uygulanır