Bagikan melalui


Expression.Field Metode

Definisi

Membuat yang MemberExpression mewakili mengakses bidang.

Overload

Field(Expression, FieldInfo)

Membuat yang MemberExpression mewakili mengakses bidang.

Field(Expression, String)

MemberExpression Membuat yang mewakili mengakses bidang yang diberi nama bidang.

Field(Expression, Type, String)

Membuat yang MemberExpression mewakili mengakses bidang.

Field(Expression, FieldInfo)

Sumber:
MemberExpression.cs
Sumber:
MemberExpression.cs
Sumber:
MemberExpression.cs

Membuat yang MemberExpression mewakili mengakses bidang.

public:
 static System::Linq::Expressions::MemberExpression ^ Field(System::Linq::Expressions::Expression ^ expression, System::Reflection::FieldInfo ^ field);
public static System.Linq.Expressions.MemberExpression Field (System.Linq.Expressions.Expression expression, System.Reflection.FieldInfo field);
public static System.Linq.Expressions.MemberExpression Field (System.Linq.Expressions.Expression? expression, System.Reflection.FieldInfo field);
static member Field : System.Linq.Expressions.Expression * System.Reflection.FieldInfo -> System.Linq.Expressions.MemberExpression
Public Shared Function Field (expression As Expression, field As FieldInfo) As MemberExpression

Parameter

expression
Expression

Untuk Expression mengatur properti yang Expression sama dengan. Untuk static (Shared di Visual Basic), expression harus null.

field
FieldInfo

FieldInfo untuk mengatur Member properti sama dengan.

Mengembalikan

MemberExpression yang memiliki NodeType properti yang sama dengan MemberAccess dan Expression properti dan Member diatur ke nilai yang ditentukan.

Pengecualian

fieldadalah null.

-atau-

Bidang yang diwakili oleh field bukan static (Shared dalam Visual Basic) dan expression adalah null.

expression. Tipe tidak dapat ditetapkan ke jenis deklarasi bidang yang diwakili oleh field.

Keterangan

Properti Type dari yang dihasilkan MemberExpression sama dengan FieldType properti .field

Berlaku untuk

Field(Expression, String)

Sumber:
MemberExpression.cs
Sumber:
MemberExpression.cs
Sumber:
MemberExpression.cs

MemberExpression Membuat yang mewakili mengakses bidang yang diberi nama bidang.

public:
 static System::Linq::Expressions::MemberExpression ^ Field(System::Linq::Expressions::Expression ^ expression, System::String ^ fieldName);
public static System.Linq.Expressions.MemberExpression Field (System.Linq.Expressions.Expression expression, string fieldName);
static member Field : System.Linq.Expressions.Expression * string -> System.Linq.Expressions.MemberExpression
Public Shared Function Field (expression As Expression, fieldName As String) As MemberExpression

Parameter

expression
Expression

Type Yang Expression berisi bidang bernama fieldName. Ini bisa null untuk bidang statis.

fieldName
String

Nama bidang yang akan diakses.

Mengembalikan

MemberExpression yang memiliki NodeType properti yang sama dengan MemberAccess, Expression properti diatur ke expression, dan Member properti diatur ke FieldInfo yang mewakili bidang yang ditandai dengan fieldName.

Pengecualian

expression atau fieldName adalah null.

Tidak ada bidang bernama fieldName yang didefinisikan dalam expression. Jenis atau jenis dasarnya.

Contoh

Contoh kode berikut menunjukkan cara membuat ekspresi yang mewakili mengakses bidang.

// Add the following directive to your file:
// using System.Linq.Expressions;

class TestFieldClass
{
    int sample = 40;
}

static void TestField()
{
    TestFieldClass obj = new TestFieldClass();

    // This expression represents accessing a field.
    // For static fields, the first parameter must be null.
    Expression fieldExpr = Expression.Field(
        Expression.Constant(obj),
        "sample"
    );

    // The following statement first creates an expression tree,
    // then compiles it, and then runs it.
    Console.WriteLine(Expression.Lambda<Func<int>>(fieldExpr).Compile()());
}

// This code example produces the following output:
//
// 40
' Add the following directive to your file:
' Imports System.Linq.Expressions

Class TestFieldClass
    Dim sample As Integer = 40
End Class

Sub TestField()

    Dim obj As New TestFieldClass()

    ' This expression represents accessing a field.
    ' For static fields, the first parameter must be Nothing.
    Dim fieldExpr As Expression = Expression.Field(
          Expression.Constant(obj),
          "sample"
      )

    ' The following statement first creates an expression tree,
    ' then compiles it, and then runs it.
    Console.WriteLine(Expression.Lambda(Of Func(Of Integer))(fieldExpr).Compile()())
End Sub

' This code example produces the following output:
'
' 40

Keterangan

Properti Type dari yang dihasilkan MemberExpression sama dengan FieldType properti FieldInfo dari yang mewakili bidang yang ditandai dengan fieldName.

Metode ini mencari expression. Jenis dan jenis dasarnya untuk bidang yang memiliki nama fieldName. Bidang publik diberikan preferensi atas bidang non-publik. Jika bidang yang cocok ditemukan, metode ini meneruskan expression dan yang mewakili bidang tersebut FieldInfo ke Field.

Berlaku untuk

Field(Expression, Type, String)

Sumber:
MemberExpression.cs
Sumber:
MemberExpression.cs
Sumber:
MemberExpression.cs

Membuat yang MemberExpression mewakili mengakses bidang.

public:
 static System::Linq::Expressions::MemberExpression ^ Field(System::Linq::Expressions::Expression ^ expression, Type ^ type, System::String ^ fieldName);
public static System.Linq.Expressions.MemberExpression Field (System.Linq.Expressions.Expression expression, Type type, string fieldName);
public static System.Linq.Expressions.MemberExpression Field (System.Linq.Expressions.Expression? expression, Type type, string fieldName);
static member Field : System.Linq.Expressions.Expression * Type * string -> System.Linq.Expressions.MemberExpression
Public Shared Function Field (expression As Expression, type As Type, fieldName As String) As MemberExpression

Parameter

expression
Expression

Objek yang berisi bidang . Ini bisa null untuk bidang statis.

type
Type

yang Type berisi bidang .

fieldName
String

Bidang yang akan diakses.

Mengembalikan

Yang dibuat MemberExpression.

Berlaku untuk