System.Linq.Expressions 命名空间
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
包含类、接口和枚举,这些类使语言级代码表达式以表达式树的形式表示为对象。
类
| 名称 | 说明 |
|---|---|
| BinaryExpression |
表示具有二进制运算符的表达式。 |
| BlockExpression |
表示一个块,其中包含可以定义变量的表达式序列。 |
| CatchBlock |
表示 try 块中的 catch 语句。 |
| ConditionalExpression |
表示具有条件运算符的表达式。 |
| ConstantExpression |
表示具有常量值的表达式。 |
| DebugInfoExpression |
发出或清除调试信息的序列点。 这样,调试器就可以在调试时突出显示正确的源代码。 |
| DefaultExpression |
表示类型或空表达式的默认值。 |
| DynamicExpression |
表示动态操作。 |
| DynamicExpressionVisitor |
表示动态表达式树的访问者或重写器。 |
| ElementInit |
表示集合的单个元素的初始 IEnumerable 值设定项。 |
| Expression |
提供从中派生表示表达式树节点的类的基类。 它还包含 |
| Expression<TDelegate> |
以表达式树的形式表示强类型 lambda 表达式作为数据结构。 此类不能被继承。 |
| ExpressionVisitor |
表示表达式树的访问者或重写器。 |
| GotoExpression |
表示无条件跳跃。 这包括 return 语句、break 和 continue 语句和其他跳转。 |
| IndexExpression |
表示为属性或数组编制索引。 |
| InvocationExpression |
表示将委托或 lambda 表达式应用于参数表达式列表的表达式。 |
| LabelExpression |
表示可放入任何 Expression 上下文中的标签。 如果跳转到它,它将获取相应 GotoExpression值提供的值。 否则,它将接收值。DefaultValue Type如果等于 System.Void,则不应提供任何值。 |
| LabelTarget |
用于表示目标 GotoExpression。 |
| LambdaExpression |
描述 lambda 表达式。 这会捕获类似于 .NET 方法正文的代码块。 |
| ListInitExpression |
表示具有集合初始值设定项的构造函数调用。 |
| LoopExpression |
表示无限循环。 可以使用“break”退出它。 |
| MemberAssignment |
表示对象的字段或属性的赋值操作。 |
| MemberBinding |
提供基类,这些类表示用于初始化新创建对象的成员的绑定派生。 |
| MemberExpression |
表示访问字段或属性。 |
| MemberInitExpression |
表示调用构造函数并初始化新对象的一个或多个成员。 |
| MemberListBinding |
表示初始化新创建对象的集合成员的元素。 |
| MemberMemberBinding |
表示初始化新创建对象的成员的成员。 |
| MethodCallExpression |
表示对静态方法或实例方法的调用。 |
| NewArrayExpression |
表示创建新数组,并可能初始化新数组的元素。 |
| NewExpression |
表示构造函数调用。 |
| ParameterExpression |
表示命名的参数表达式。 |
| RuntimeVariablesExpression |
为变量提供运行时读/写权限的表达式。 |
| SwitchCase |
表示一个 SwitchExpression. |
| SwitchExpression |
表示通过将控件 SwitchCase传递给控件来处理多个选择的控件表达式。 |
| SymbolDocumentInfo |
存储发出源文件调试符号信息所需的信息,特别是文件名和唯一语言标识符。 |
| TryExpression |
表示 try/catch/finally/fault 块。 |
| TypeBinaryExpression |
表示表达式和类型之间的操作。 |
| UnaryExpression |
表示具有一元运算符的表达式。 |
接口
| 名称 | 说明 |
|---|---|
| IArgumentProvider |
提供一个内部接口,用于访问多个树节点的参数(DynamicExpression、ElementInit、MethodCallExpression、InvocationExpression、NewExpression 和 IndexExpression)。 此 API 仅供内部使用。 |
| IDynamicExpression |
提供一个内部接口,用于访问 DynamicExpression 树节点的参数以及 CallSite 和重写功能。 不应使用此 API。 它只是由于 DLL 重构而公开的,并且仅适用于内部性能优化。 |
枚举
| 名称 | 说明 |
|---|---|
| ExpressionType |
描述表达式树节点的节点类型。 |
| GotoExpressionKind |
指定此 GotoExpression 表示的跳转类型。 |
| MemberBindingType |
描述 MemberInitExpression 对象中使用的绑定类型。 |
注解
抽象类 Expression 提供用于对表达式树进行建模的类层次结构的根。
例如,Expression派生自MemberExpression此命名空间中的类,用于ParameterExpression表示表达式树中的节点。
Expression 类包含 static (Visual Basic) 工厂方法中的 Shared,用于创建各种类型的表达式树节点。
枚举类型 ExpressionType 指定唯一节点类型。