Represents a named parameter expression(命名的参数表达式).
命名空间:
System.Linq.Expressions
程序集: System.Core(System.Core.dll 中)
System.Object
System.Linq.Expressions.Expression
System.Linq.Expressions.ParameterExpression
public class ParameterExpression : Expression
CanReduce | Indicates that the node can be reduced to a simpler node. If this returns true, Reduce() can be called to produce the reduced form.(从 Expression 继承。) | |
IsByRef | Indicates that this ParameterExpression is to be treated as a ByRef parameter. | |
Name | Gets the name of the parameter or variable. | |
NodeType | Returns the node type of this Expression.(替代 Expression.NodeType。) | |
Type | Gets the static type of the expression that this Expression represents.(替代 Expression.Type。) |
Dispatches to the specific visit method for this node type. For example, MethodCallExpression calls the VisitMethodCall.(替代 Expression.Accept(ExpressionVisitor)。) | ||
Equals(Object) | Determines whether the specified object is equal to the current object.(从 Object 继承。) | |
Finalize() | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(从 Object 继承。) | |
GetHashCode() | Serves as the default hash function.(从 Object 继承。) | |
GetType() | ||
MemberwiseClone() | ||
Reduce() | Reduces this node to a simpler expression. 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. If CanReduce returns true, this should return a valid expression. This method can return another node which itself must be reduced.(从 Expression 继承。) | |
ReduceExtensions() | 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() | 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 继承。) |
Use the Parameter factory method to create a ParameterExpression.
The value of the NodeType property of a ParameterExpression object is 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