MemberExpression 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示访问字段或属性。
public ref class MemberExpression : System::Linq::Expressions::Expression
public ref class MemberExpression sealed : System::Linq::Expressions::Expression
public class MemberExpression : System.Linq.Expressions.Expression
public sealed class MemberExpression : System.Linq.Expressions.Expression
type MemberExpression = class
inherit Expression
Public Class MemberExpression
Inherits Expression
Public NotInheritable Class MemberExpression
Inherits Expression
- 继承
示例
以下示例创建一个 MemberExpression 表示获取字段成员的值的 。
class Animal
{
public string species;
}
public static void CreateFieldExpression()
{
Animal horse = new Animal();
// Create a MemberExpression that represents getting
// the value of the 'species' field of class 'Animal'.
System.Linq.Expressions.MemberExpression memberExpression =
System.Linq.Expressions.Expression.Field(
System.Linq.Expressions.Expression.Constant(horse),
"species");
Console.WriteLine(memberExpression.ToString());
// This code produces the following output:
//
// value(CodeSnippets.FieldExample+Animal).species
}
Class Animal
Dim species As String
End Class
Shared Sub CreateFieldExpression()
Dim horse As New Animal
' Create a MemberExpression that represents getting
' the value of the 'species' field of class 'Animal'.
Dim memberExpression As System.Linq.Expressions.MemberExpression = _
System.Linq.Expressions.Expression.Field( _
System.Linq.Expressions.Expression.Constant(horse), _
"species")
Console.WriteLine(memberExpression.ToString())
' This code produces the following output:
'
' value(ExpressionVB.FieldExample+Animal).species
End Sub
注解
Field使用 、 Property 或 PropertyOrField 工厂方法创建 MemberExpression。
的 NodeType 属性的MemberExpressionMemberAccess值为 。
属性
CanReduce |
指示可将节点简化为更简单的节点。 如果返回 true,则可以调用 Reduce() 以生成简化形式。 (继承自 Expression) |
Expression |
获取字段或属性的包含对象。 |
Member |
获取要访问的字段或属性。 |
NodeType |
返回此 Expression 的节点类型。 |
NodeType |
获取此 Expression 的节点类型。 (继承自 Expression) |
Type |
获取此 Expression 表示的表达式的静态类型。 (继承自 Expression) |
方法
Accept(ExpressionVisitor) |
调度到此节点类型的特定 Visit 方法。 例如,MethodCallExpression 调用 VisitMethodCall(MethodCallExpression)。 |
Accept(ExpressionVisitor) |
调度到此节点类型的特定 Visit 方法。 例如,MethodCallExpression 调用 VisitMethodCall(MethodCallExpression)。 (继承自 Expression) |
Equals(Object) |
确定指定对象是否等于当前对象。 (继承自 Object) |
GetHashCode() |
作为默认哈希函数。 (继承自 Object) |
GetType() |
获取当前实例的 Type。 (继承自 Object) |
MemberwiseClone() |
创建当前 Object 的浅表副本。 (继承自 Object) |
Reduce() |
将此节点简化为更简单的表达式。 如果 CanReduce 返回 true,则它应返回有效的表达式。 此方法可以返回本身必须简化的另一个节点。 (继承自 Expression) |
ReduceAndCheck() |
将此节点简化为更简单的表达式。 如果 CanReduce 返回 true,则它应返回有效的表达式。 此方法可以返回本身必须简化的另一个节点。 (继承自 Expression) |
ReduceExtensions() |
将表达式简化为已知节点类型(即非 Extension 节点)或仅在此类型为已知类型时返回表达式。 (继承自 Expression) |
ToString() |
返回 Expression 的的文本化表示形式。 (继承自 Expression) |
Update(Expression) |
创建一个新的表达式,它类似于此表达式,但使用所提供的子级。 如果所有子级均相同,它将返回此表达式。 |
VisitChildren(ExpressionVisitor) |
简化节点,然后对简化的表达式调用访问者委托。 该方法在节点不可简化时引发异常。 (继承自 Expression) |