ParameterExpression 類別
定義
代表具名參數運算式。Represents a named parameter expression.
public ref class ParameterExpression : System::Linq::Expressions::Expression
public ref class ParameterExpression sealed : System::Linq::Expressions::Expression
public class ParameterExpression : System.Linq.Expressions.Expression
public sealed class ParameterExpression : System.Linq.Expressions.Expression
type ParameterExpression = class
inherit Expression
Public Class ParameterExpression
Inherits Expression
Public NotInheritable Class ParameterExpression
Inherits Expression
- 繼承
範例
下列範例示範如何使用方法來建立 MethodCallExpression 會列印物件值的物件 ParameterExpression Parameter 。The following example demonstrates how to create a MethodCallExpression object that prints the value of a ParameterExpression object by using the Parameter method.
// 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
備註
使用 Parameter factory 方法來建立 ParameterExpression 。Use the Parameter factory method to create a ParameterExpression.
物件的屬性值 NodeType ParameterExpression 為 Parameter 。The value of the NodeType property of a ParameterExpression object is Parameter.
屬性
CanReduce |
表示節點可精簡為更簡單的節點。Indicates that the node can be reduced to a simpler node. 如果傳回 true,則可呼叫 Reduce() 以產生精簡的形式。If this returns true, Reduce() can be called to produce the reduced form. (繼承來源 Expression) |
IsByRef |
表示這個 |
Name |
取得參數或變數的名稱。Gets the name of the parameter or variable. |
NodeType |
傳回這個 Expression 的節點類型。Returns the node type of this Expression. |
NodeType |
取得這個 Expression 的節點類型。Gets the node type of this Expression. (繼承來源 Expression) |
Type |
取得此 Expression 代表之運算式的靜態類型。Gets the static type of the expression that this Expression represents. |
Type |
取得此 Expression 代表之運算式的靜態類型。Gets the static type of the expression that this Expression represents. (繼承來源 Expression) |
方法
Accept(ExpressionVisitor) |
分派給這個節點類型的特定造訪方法。Dispatches to the specific visit method for this node type. 例如,MethodCallExpression 會呼叫 VisitMethodCall(MethodCallExpression)。For example, MethodCallExpression calls the VisitMethodCall(MethodCallExpression). |
Accept(ExpressionVisitor) |
分派給這個節點類型的特定造訪方法。Dispatches to the specific visit method for this node type. 例如,MethodCallExpression 會呼叫 VisitMethodCall(MethodCallExpression)。For example, MethodCallExpression calls the VisitMethodCall(MethodCallExpression). (繼承來源 Expression) |
Equals(Object) |
判斷指定的物件是否等於目前的物件。Determines whether the specified object is equal to the current object. (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。Serves as the default hash function. (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。Gets the Type of the current instance. (繼承來源 Object) |
MemberwiseClone() |
建立目前 Object 的淺層複製。Creates a shallow copy of the current Object. (繼承來源 Object) |
Reduce() |
將這個節點精簡為更簡單的運算式。Reduces this node to a simpler expression. 如果 CanReduce 傳回 true,則應該傳回有效的運算式。If CanReduce returns true, this should return a valid expression. 這個方法可以傳回其他本身必須精簡的節點。This method can return another node which itself must be reduced. (繼承來源 Expression) |
ReduceAndCheck() |
將這個節點精簡為更簡單的運算式。Reduces this node to a simpler expression. 如果 CanReduce 傳回 true,則應該傳回有效的運算式。If CanReduce returns true, this should return a valid expression. 這個方法可以傳回其他本身必須精簡的節點。This method can return another node which itself must be reduced. (繼承來源 Expression) |
ReduceExtensions() |
將運算式精簡為已知的節點類型 (不是 Extension 節點),如果已經是已知的類型,則僅傳回運算式。Reduces the expression to a known node type (that is not an Extension node) or just returns the expression if it is already a known type. (繼承來源 Expression) |
ToString() |
傳回 Expression 的文字表示。Returns a textual representation of the Expression. (繼承來源 Expression) |
VisitChildren(ExpressionVisitor) |
精簡節點,然後呼叫精簡後的運算式上的訪問項委派。Reduces the node and then calls the visitor delegate on the reduced expression. 如果節點無法縮減,此方法會擲回例外狀況。The method throws an exception if the node is not reducible. (繼承來源 Expression) |