Expression.Parameter 方法

定義

建立 ParameterExpression 節點,此節點可用以識別運算式樹狀中的參數或變數。

多載

Parameter(Type, String)

建立 ParameterExpression 節點,此節點可用以識別運算式樹狀中的參數或變數。

Parameter(Type)

建立 ParameterExpression 節點,此節點可用以識別運算式樹狀中的參數或變數。

Parameter(Type, String)

建立 ParameterExpression 節點,此節點可用以識別運算式樹狀中的參數或變數。

public:
 static System::Linq::Expressions::ParameterExpression ^ Parameter(Type ^ type, System::String ^ name);
public static System.Linq.Expressions.ParameterExpression Parameter (Type type, string name);
public static System.Linq.Expressions.ParameterExpression Parameter (Type type, string? name);
static member Parameter : Type * string -> System.Linq.Expressions.ParameterExpression
Public Shared Function Parameter (type As Type, name As String) As ParameterExpression

參數

type
Type

參數或變數的類型。

name
String

參數或變數的名稱,僅供偵錯或列印之用。

傳回

ParameterExpression

ParameterExpression,其 NodeType 屬性等於 Parameter,且 TypeName 屬性設定為指定的值。

例外狀況

typenull

適用於

Parameter(Type)

建立 ParameterExpression 節點,此節點可用以識別運算式樹狀中的參數或變數。

public:
 static System::Linq::Expressions::ParameterExpression ^ Parameter(Type ^ type);
public static System.Linq.Expressions.ParameterExpression Parameter (Type type);
static member Parameter : Type -> System.Linq.Expressions.ParameterExpression
Public Shared Function Parameter (type As Type) As ParameterExpression

參數

type
Type

參數或變數的類型。

傳回

ParameterExpression

建立含指定之名稱和類型的 ParameterExpression 節點。

範例

下列範例示範如何建立 MethodCallExpression 物件,以列印 物件的值 ParameterExpression

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

// Creating a parameter for the expression tree.
ParameterExpression param = Expression.Parameter(typeof(int));

// Creating an expression for the method call and specifying its parameter.
MethodCallExpression methodCall = Expression.Call(
    typeof(Console).GetMethod("WriteLine", new Type[] { typeof(int) }),
    param
);

// The following statement first creates an expression tree,
// then compiles it, and then runs it.
Expression.Lambda<Action<int>>(
    methodCall,
    new ParameterExpression[] { param }
).Compile()(10);

// This code example produces the following output:
//
// 10
' Add the following directive to the file:
' Imports System.Linq.Expressions 

' Creating a parameter for the expression tree.
Dim param As ParameterExpression = Expression.Parameter(GetType(Integer))

' Creating an expression for the method call and specifying its parameter.
Dim methodCall As MethodCallExpression = Expression.Call(
        GetType(Console).GetMethod("WriteLine", New Type() {GetType(Integer)}),
        param
    )

' Compiling and invoking the methodCall expression.
Expression.Lambda(Of Action(Of Integer))(
    methodCall,
    New ParameterExpression() {param}
).Compile()(10)
' This code example produces the following output:
'
' 10

適用於