Bagikan melalui


FieldInfo Kelas

Definisi

Menemukan atribut bidang dan menyediakan akses ke metadata bidang.

public ref class FieldInfo abstract : System::Reflection::MemberInfo
public ref class FieldInfo abstract : System::Reflection::MemberInfo, System::Runtime::InteropServices::_FieldInfo
public abstract class FieldInfo : System.Reflection.MemberInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
public abstract class FieldInfo : System.Reflection.MemberInfo, System.Runtime.InteropServices._FieldInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class FieldInfo : System.Reflection.MemberInfo, System.Runtime.InteropServices._FieldInfo
type FieldInfo = class
    inherit MemberInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
type FieldInfo = class
    inherit MemberInfo
    interface _FieldInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FieldInfo = class
    inherit MemberInfo
    interface _FieldInfo
Public MustInherit Class FieldInfo
Inherits MemberInfo
Public MustInherit Class FieldInfo
Inherits MemberInfo
Implements _FieldInfo
Warisan
FieldInfo
Turunan
Atribut
Penerapan

Contoh

Contoh berikut menggunakan Type.GetFields metode untuk mendapatkan informasi terkait bidang dari FieldInfo kelas, lalu menampilkan atribut bidang.

using namespace System;
using namespace System::Reflection;
public ref class FieldInfoClass
{
public:
   int myField1;

protected:
   String^ myField2;
};

int main()
{
   array<FieldInfo^>^myFieldInfo;
   Type^ myType = FieldInfoClass::typeid;

   // Get the type and fields of FieldInfoClass.
   myFieldInfo = myType->GetFields( static_cast<BindingFlags>(BindingFlags::NonPublic | BindingFlags::Instance | BindingFlags::Public) );
   Console::WriteLine( "\nThe fields of FieldInfoClass are \n" );

   // Display the field information of FieldInfoClass.
   for ( int i = 0; i < myFieldInfo->Length; i++ )
   {
      Console::WriteLine( "\nName            : {0}", myFieldInfo[ i ]->Name );
      Console::WriteLine( "Declaring Type  : {0}", myFieldInfo[ i ]->DeclaringType );
      Console::WriteLine( "IsPublic        : {0}", myFieldInfo[ i ]->IsPublic );
      Console::WriteLine( "MemberType      : {0}", myFieldInfo[ i ]->MemberType );
      Console::WriteLine( "FieldType       : {0}", myFieldInfo[ i ]->FieldType );
      Console::WriteLine( "IsFamily        : {0}", myFieldInfo[ i ]->IsFamily );
   }
}
using System;
using System.Reflection;

public class FieldInfoClass
{
    public int myField1 = 0;
    protected string myField2 = null;
    public static void Main()
    {
        FieldInfo[] myFieldInfo;
        Type myType = typeof(FieldInfoClass);
        // Get the type and fields of FieldInfoClass.
        myFieldInfo = myType.GetFields(BindingFlags.NonPublic | BindingFlags.Instance
            | BindingFlags.Public);
        Console.WriteLine("\nThe fields of " +
            "FieldInfoClass are \n");
        // Display the field information of FieldInfoClass.
        for(int i = 0; i < myFieldInfo.Length; i++)
        {
            Console.WriteLine("\nName            : {0}", myFieldInfo[i].Name);
            Console.WriteLine("Declaring Type  : {0}", myFieldInfo[i].DeclaringType);
            Console.WriteLine("IsPublic        : {0}", myFieldInfo[i].IsPublic);
            Console.WriteLine("MemberType      : {0}", myFieldInfo[i].MemberType);
            Console.WriteLine("FieldType       : {0}", myFieldInfo[i].FieldType);
            Console.WriteLine("IsFamily        : {0}", myFieldInfo[i].IsFamily);
        }
    }
}
Imports System.Reflection

Public Class FieldInfoClass
    Public myField1 As Integer = 0
    Protected myField2 As String = Nothing

    Public Shared Sub Main()
        Dim myFieldInfo() As FieldInfo
        Dim myType As Type = GetType(FieldInfoClass)
        ' Get the type and fields of FieldInfoClass.
        myFieldInfo = myType.GetFields(BindingFlags.NonPublic Or _
                      BindingFlags.Instance Or BindingFlags.Public)
        Console.WriteLine(ControlChars.NewLine & "The fields of " & _
                      "FieldInfoClass class are " & ControlChars.NewLine)
        ' Display the field information of FieldInfoClass.
        Dim i As Integer
        For i = 0 To myFieldInfo.Length - 1
            Console.WriteLine(ControlChars.NewLine + "Name            : {0}", myFieldInfo(i).Name)
            Console.WriteLine("Declaring Type  : {0}", myFieldInfo(i).DeclaringType)
            Console.WriteLine("IsPublic        : {0}", myFieldInfo(i).IsPublic)
            Console.WriteLine("MemberType      : {0}", myFieldInfo(i).MemberType)
            Console.WriteLine("FieldType       : {0}", myFieldInfo(i).FieldType)
            Console.WriteLine("IsFamily        : {0}", myFieldInfo(i).IsFamily)
        Next i
    End Sub
End Class

Keterangan

Informasi bidang diperoleh dari metadata. Kelas FieldInfo tidak memiliki konstruktor publik. FieldInfo objek diperoleh dengan memanggil GetFields metode atau GetField objek Type .

Bidang adalah variabel yang ditentukan dalam kelas . FieldInfo menyediakan akses ke metadata untuk bidang dalam kelas dan menyediakan set dinamis dan mendapatkan fungsionalitas untuk bidang . Kelas tidak dimuat ke dalam memori sampai memanggil atau mendapatkan dipanggil pada objek .

Catatan Bagi Implementer

Ketika Anda mewarisi dari FieldInfo, Anda harus mengambil alih anggota berikut: GetValue(Object) dan SetValue(Object, Object, BindingFlags, Binder, CultureInfo).

Konstruktor

FieldInfo()

Menginisialisasi instans baru kelas FieldInfo.

Properti

Attributes

Mendapatkan atribut yang terkait dengan bidang ini.

CustomAttributes

Mendapatkan koleksi yang berisi atribut kustom anggota ini.

(Diperoleh dari MemberInfo)
DeclaringType

Mendapatkan kelas yang menyatakan anggota ini.

(Diperoleh dari MemberInfo)
FieldHandle

RuntimeFieldHandleMendapatkan , yang merupakan handel ke representasi metadata internal bidang.

FieldType

Mendapatkan tipe objek bidang ini.

IsAssembly

Mendapatkan nilai yang menunjukkan apakah visibilitas potensial bidang ini dijelaskan oleh Assembly; yaitu, bidang terlihat paling banyak untuk jenis lain dalam rakitan yang sama, dan tidak terlihat oleh jenis turunan di luar rakitan.

IsCollectible

Mendapatkan nilai yang menunjukkan apakah objek ini MemberInfo adalah bagian dari rakitan yang disimpan dalam koleksi AssemblyLoadContext.

(Diperoleh dari MemberInfo)
IsFamily

Mendapatkan nilai yang menunjukkan apakah visibilitas bidang ini dijelaskan oleh Family; yaitu, bidang hanya terlihat dalam kelas dan kelas turunannya.

IsFamilyAndAssembly

Mendapatkan nilai yang menunjukkan apakah visibilitas bidang ini dijelaskan oleh FamANDAssem; yaitu, bidang dapat diakses dari kelas turunan, tetapi hanya jika berada dalam rakitan yang sama.

IsFamilyOrAssembly

Mendapatkan nilai yang menunjukkan apakah visibilitas potensial bidang ini dijelaskan oleh FamORAssem; yaitu, bidang dapat diakses oleh kelas turunan di mana pun mereka berada, dan berdasarkan kelas dalam rakitan yang sama.

IsInitOnly

Mendapatkan nilai yang menunjukkan apakah bidang hanya dapat diatur dalam isi konstruktor.

IsLiteral

Mendapatkan nilai yang menunjukkan apakah nilai ditulis pada waktu kompilasi dan tidak dapat diubah.

IsNotSerialized
Kedaluwarsa.

Mendapatkan nilai yang menunjukkan apakah bidang ini memiliki NotSerialized atribut .

IsPinvokeImpl

Mendapatkan nilai yang menunjukkan apakah atribut yang PinvokeImpl sesuai diatur dalam FieldAttributes.

IsPrivate

Mendapatkan nilai yang menunjukkan apakah bidang bersifat privat.

IsPublic

Mendapatkan nilai yang menunjukkan apakah bidang bersifat publik.

IsSecurityCritical

Mendapatkan nilai yang menunjukkan apakah bidang saat ini kritis terhadap keamanan atau keamanan-aman-kritis pada tingkat kepercayaan saat ini.

IsSecuritySafeCritical

Mendapatkan nilai yang menunjukkan apakah bidang saat ini adalah keamanan-aman-kritis pada tingkat kepercayaan saat ini.

IsSecurityTransparent

Mendapatkan nilai yang menunjukkan apakah bidang saat ini transparan pada tingkat kepercayaan saat ini.

IsSpecialName

Mendapatkan nilai yang menunjukkan apakah atribut yang SpecialName sesuai diatur dalam FieldAttributes enumerator.

IsStatic

Mendapatkan nilai yang menunjukkan apakah bidang statis.

MemberType

Mendapatkan nilai yang MemberTypes menunjukkan bahwa anggota ini adalah bidang .

MemberType

Ketika ditimpa dalam kelas turunan, mendapatkan nilai yang MemberTypes menunjukkan jenis anggota - metode, konstruktor, peristiwa, dan sebagainya.

(Diperoleh dari MemberInfo)
MetadataToken

Mendapatkan nilai yang mengidentifikasi elemen metadata.

(Diperoleh dari MemberInfo)
Module

Mendapatkan modul di mana jenis yang menyatakan anggota yang diwakili oleh saat ini MemberInfo ditentukan.

(Diperoleh dari MemberInfo)
Name

Mendapatkan nama anggota saat ini.

(Diperoleh dari MemberInfo)
ReflectedType

Mendapatkan objek kelas yang digunakan untuk mendapatkan instans ini dari MemberInfo.

(Diperoleh dari MemberInfo)

Metode

Equals(Object)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

Equals(Object)

Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu.

(Diperoleh dari MemberInfo)
GetCustomAttributes(Boolean)

Saat ditimpa di kelas turunan, mengembalikan array semua atribut kustom yang diterapkan ke anggota ini.

(Diperoleh dari MemberInfo)
GetCustomAttributes(Type, Boolean)

Saat ditimpa di kelas turunan, mengembalikan array atribut kustom yang diterapkan ke anggota ini dan diidentifikasi oleh Type.

(Diperoleh dari MemberInfo)
GetCustomAttributesData()

Mengembalikan daftar CustomAttributeData objek yang mewakili data tentang atribut yang telah diterapkan ke anggota target.

(Diperoleh dari MemberInfo)
GetFieldFromHandle(RuntimeFieldHandle)

Mendapatkan untuk bidang yang FieldInfo diwakili oleh handel yang ditentukan.

GetFieldFromHandle(RuntimeFieldHandle, RuntimeTypeHandle)

Mendapatkan untuk bidang yang FieldInfo diwakili oleh handel yang ditentukan, untuk jenis generik yang ditentukan.

GetHashCode()

Mengembalikan kode hash untuk instans ini.

GetHashCode()

Mengembalikan kode hash untuk instans ini.

(Diperoleh dari MemberInfo)
GetModifiedFieldType()

Mendapatkan tipe objek bidang yang dimodifikasi.

GetOptionalCustomModifiers()

Mendapatkan array jenis yang mengidentifikasi pengubah kustom opsional bidang.

GetRawConstantValue()

Mengembalikan nilai harfiah yang terkait dengan bidang oleh pengkompilasi.

GetRequiredCustomModifiers()

Mendapatkan array jenis yang mengidentifikasi pengubah kustom properti yang diperlukan.

GetType()

Menemukan atribut bidang kelas dan menyediakan akses ke metadata bidang.

GetType()

Menemukan atribut anggota dan menyediakan akses ke metadata anggota.

(Diperoleh dari MemberInfo)
GetValue(Object)

Saat ditimpa di kelas turunan, mengembalikan nilai bidang yang didukung oleh objek tertentu.

GetValueDirect(TypedReference)

Mengembalikan nilai bidang yang didukung oleh objek tertentu.

HasSameMetadataDefinitionAs(MemberInfo)

Menemukan atribut bidang dan menyediakan akses ke metadata bidang.

(Diperoleh dari MemberInfo)
IsDefined(Type, Boolean)

Ketika ditimpa di kelas turunan, menunjukkan apakah satu atau beberapa atribut dari jenis yang ditentukan atau jenis turunannya diterapkan ke anggota ini.

(Diperoleh dari MemberInfo)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
SetValue(Object, Object)

Mengatur nilai bidang yang didukung oleh objek yang diberikan.

SetValue(Object, Object, BindingFlags, Binder, CultureInfo)

Saat ditimpa di kelas turunan, menetapkan nilai bidang yang didukung oleh objek yang diberikan.

SetValueDirect(TypedReference, Object)

Mengatur nilai bidang yang didukung oleh objek yang diberikan.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Operator

Equality(FieldInfo, FieldInfo)

Menunjukkan apakah dua FieldInfo objek sama.

Inequality(FieldInfo, FieldInfo)

Menunjukkan apakah dua FieldInfo objek tidak sama.

Implementasi Antarmuka Eksplisit

_FieldInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai.

_FieldInfo.GetType()

Mendapatkan objek yang Type mewakili FieldInfo jenis .

_FieldInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Mengambil informasi jenis untuk objek, yang kemudian dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka.

_FieldInfo.GetTypeInfoCount(UInt32)

Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1).

_FieldInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Menyediakan akses ke properti dan metode yang diekspos oleh objek.

_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai.

(Diperoleh dari MemberInfo)
_MemberInfo.GetType()

Mendapatkan objek yang Type mewakili MemberInfo kelas .

(Diperoleh dari MemberInfo)
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Mengambil informasi jenis untuk objek, yang kemudian dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka.

(Diperoleh dari MemberInfo)
_MemberInfo.GetTypeInfoCount(UInt32)

Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1).

(Diperoleh dari MemberInfo)
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Menyediakan akses ke properti dan metode yang diekspos oleh objek.

(Diperoleh dari MemberInfo)
ICustomAttributeProvider.GetCustomAttributes(Boolean)

Mengembalikan array dari semua atribut kustom yang ditentukan pada anggota ini, tidak termasuk atribut bernama, atau array kosong jika tidak ada atribut kustom.

(Diperoleh dari MemberInfo)
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean)

Mengembalikan array atribut kustom yang ditentukan pada anggota ini, diidentifikasi berdasarkan jenis, atau array kosong jika tidak ada atribut kustom dari jenis tersebut.

(Diperoleh dari MemberInfo)
ICustomAttributeProvider.IsDefined(Type, Boolean)

Menunjukkan apakah satu atau beberapa attributeType instans ditentukan pada anggota ini.

(Diperoleh dari MemberInfo)

Metode Ekstensi

GetCustomAttribute(MemberInfo, Type)

Mengambil atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu.

GetCustomAttribute(MemberInfo, Type, Boolean)

Mengambil atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu, dan secara opsional memeriksa leluhur anggota tersebut.

GetCustomAttribute<T>(MemberInfo)

Mengambil atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu.

GetCustomAttribute<T>(MemberInfo, Boolean)

Mengambil atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu, dan secara opsional memeriksa leluhur anggota tersebut.

GetCustomAttributes(MemberInfo)

Mengambil kumpulan atribut kustom yang diterapkan ke anggota tertentu.

GetCustomAttributes(MemberInfo, Boolean)

Mengambil kumpulan atribut kustom yang diterapkan ke anggota tertentu, dan secara opsional memeriksa leluhur anggota tersebut.

GetCustomAttributes(MemberInfo, Type)

Mengambil kumpulan atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu.

GetCustomAttributes(MemberInfo, Type, Boolean)

Mengambil kumpulan atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu, dan secara opsional memeriksa leluhur anggota tersebut.

GetCustomAttributes<T>(MemberInfo)

Mengambil kumpulan atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu.

GetCustomAttributes<T>(MemberInfo, Boolean)

Mengambil kumpulan atribut kustom dari jenis tertentu yang diterapkan ke anggota tertentu, dan secara opsional memeriksa leluhur anggota tersebut.

IsDefined(MemberInfo, Type)

Menunjukkan apakah atribut kustom dari jenis tertentu diterapkan ke anggota tertentu.

IsDefined(MemberInfo, Type, Boolean)

Menunjukkan apakah atribut kustom dari jenis tertentu diterapkan ke anggota tertentu, dan, secara opsional, diterapkan ke leluhurnya.

GetMetadataToken(MemberInfo)

Mendapatkan token metadata untuk anggota yang diberikan, jika tersedia.

HasMetadataToken(MemberInfo)

Mengembalikan nilai yang menunjukkan apakah token metadata tersedia untuk anggota yang ditentukan.

Berlaku untuk

Keamanan Thread

Jenis ini aman untuk utas.

Lihat juga