FieldInfo Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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
- 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 |
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 |
|
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 |
IsPinvokeImpl |
Mendapatkan nilai yang menunjukkan apakah atribut yang |
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 |
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 |
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() | |
_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 |
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.