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 Factory 方法來建立 MemberExpression。
屬性 NodeTypeMemberExpression 值為 MemberAccess。
屬性
CanReduce |
表示節點可精簡為更簡單的節點。 如果傳回 true,則可呼叫 Reduce() 以產生精簡的形式。 (繼承來源 Expression) |
Expression |
取得欄位或屬性的包含物件。 |
Member |
取得要存取的欄位或屬性。 |
NodeType |
傳回這個 Expression 的節點類型。 |
NodeType |
取得這個 Expression 的節點類型。 (繼承來源 Expression) |
Type |
取得此 Expression 代表之運算式的靜態類型。 (繼承來源 Expression) |
方法
Accept(ExpressionVisitor) |
分派給這個節點類型的特定造訪方法。 例如,MethodCallExpression 會呼叫 VisitMethodCall(MethodCallExpression)。 |
Accept(ExpressionVisitor) |
分派給這個節點類型的特定造訪方法。 例如,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) |