FieldInfo Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Odnajduje atrybuty pola i zapewnia dostęp do metadanych pól.
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
- Dziedziczenie
- Pochodne
- Atrybuty
- Implementuje
Przykłady
W poniższym przykładzie użyto Type.GetFields metody , aby uzyskać informacje związane z polem z FieldInfo klasy, a następnie wyświetla atrybuty pól.
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
Uwagi
Informacje o polu są uzyskiwane z metadanych. Klasa FieldInfo nie ma publicznego konstruktora.
FieldInfoobiekty są uzyskiwane przez wywołanie GetFields metody Type
lub GetField obiektu.
Pola są zmiennymi zdefiniowanymi w klasie. FieldInfo zapewnia dostęp do metadanych dla pola w klasie i zapewnia zestaw dynamiczny oraz funkcje dla pola. Klasa nie jest ładowana do pamięci do momentu wywołania lub wywołania wywołania obiektu.
Uwagi dotyczące implementowania
Po dziedziczeniu z FieldInfoprogramu należy zastąpić następujące elementy członkowskie: GetValue(Object) i SetValue(Object, Object, BindingFlags, Binder, CultureInfo).
Konstruktory
FieldInfo() |
Inicjuje nowe wystąpienie klasy |
Właściwości
Attributes |
Pobiera atrybuty skojarzone z tym polem. |
CustomAttributes |
Pobiera kolekcję zawierającą atrybuty niestandardowe tego elementu członkowskiego. (Odziedziczone po MemberInfo) |
DeclaringType |
Pobiera klasę, która deklaruje ten element członkowski. (Odziedziczone po MemberInfo) |
FieldHandle |
Pobiera element |
FieldType |
Pobiera typ tego obiektu pola. |
IsAssembly |
Pobiera wartość wskazującą, czy potencjalna widoczność tego pola jest opisana przez Assemblyprogram ; oznacza to, że pole jest widoczne co najwyżej dla innych typów w tym samym zestawie i nie jest widoczne dla typów pochodnych poza zestawem. |
IsCollectible |
Pobiera wartość wskazującą, czy ten MemberInfo obiekt jest częścią zestawu przechowywanego w obiekcie zbieralnym AssemblyLoadContext. (Odziedziczone po MemberInfo) |
IsFamily |
Pobiera wartość wskazującą, czy widoczność tego pola jest opisana przez Familyelement ; oznacza to, że pole jest widoczne tylko w jej klasie i klasach pochodnych. |
IsFamilyAndAssembly |
Pobiera wartość wskazującą, czy widoczność tego pola jest opisana przez FamANDAssemprogram ; oznacza to, że dostęp do pola można uzyskać z klas pochodnych, ale tylko wtedy, gdy znajdują się w tym samym zestawie. |
IsFamilyOrAssembly |
Pobiera wartość wskazującą, czy potencjalna widoczność tego pola jest opisana przez FamORAssemelement ; oznacza to, że dostęp do pola można uzyskać za pomocą klas pochodnych wszędzie tam, gdzie są, oraz przez klasy w tym samym zestawie. |
IsInitOnly |
Pobiera wartość wskazującą, czy pole można ustawić tylko w treści konstruktora. |
IsLiteral |
Pobiera wartość wskazującą, czy wartość jest zapisywana w czasie kompilacji i nie można jej zmienić. |
IsNotSerialized |
Przestarzałe.
Pobiera wartość wskazującą, czy to pole ma |
IsPinvokeImpl |
Pobiera wartość wskazującą, czy odpowiedni |
IsPrivate |
Pobiera wartość wskazującą, czy pole jest prywatne. |
IsPublic |
Pobiera wartość wskazującą, czy pole jest publiczne. |
IsSecurityCritical |
Pobiera wartość wskazującą, czy bieżące pole ma krytyczne znaczenie dla zabezpieczeń, czy bezpieczeństwo krytyczne dla bezpieczeństwa na bieżącym poziomie zaufania. |
IsSecuritySafeCritical |
Pobiera wartość wskazującą, czy bieżące pole jest krytyczne dla bezpieczeństwa na bieżącym poziomie zaufania. |
IsSecurityTransparent |
Pobiera wartość wskazującą, czy bieżące pole jest przezroczyste na bieżącym poziomie zaufania. |
IsSpecialName |
Pobiera wartość wskazującą, czy odpowiedni |
IsStatic |
Pobiera wartość wskazującą, czy pole jest statyczne. |
MemberType |
Pobiera wartość wskazującą MemberTypes , że ten element członkowski jest polem. |
MemberType |
Po zastąpieniu w klasie pochodnej pobiera wartość wskazującą MemberTypes typ składowej — metoda, konstruktor, zdarzenie itd. (Odziedziczone po MemberInfo) |
MetadataToken |
Pobiera wartość identyfikującą element metadanych. (Odziedziczone po MemberInfo) |
Module |
Pobiera moduł, w którym typ, który deklaruje element członkowski reprezentowany przez bieżący MemberInfo jest zdefiniowany. (Odziedziczone po MemberInfo) |
Name |
Pobiera nazwę bieżącego elementu członkowskiego. (Odziedziczone po MemberInfo) |
ReflectedType |
Pobiera obiekt klasy, który został użyty do uzyskania tego wystąpienia klasy |
Metody
Equals(Object) |
Zwraca wartość wskazującą, czy to wystąpienie jest równe podanemu obiektowi. |
Equals(Object) |
Zwraca wartość wskazującą, czy to wystąpienie jest równe podanemu obiektowi. (Odziedziczone po MemberInfo) |
GetCustomAttributes(Boolean) |
Po zastąpieniu w klasie pochodnej zwraca tablicę wszystkich atrybutów niestandardowych zastosowanych do tego elementu członkowskiego. (Odziedziczone po MemberInfo) |
GetCustomAttributes(Type, Boolean) |
Po przesłonięciu w klasie pochodnej zwraca tablicę atrybutów niestandardowych zastosowanych do tego elementu członkowskiego i zidentyfikowaną przez Typeelement . (Odziedziczone po MemberInfo) |
GetCustomAttributesData() |
Zwraca listę CustomAttributeData obiektów reprezentujących dane dotyczące atrybutów, które zostały zastosowane do elementu docelowego. (Odziedziczone po MemberInfo) |
GetFieldFromHandle(RuntimeFieldHandle) |
Pobiera wartość FieldInfo dla pola reprezentowanego przez określony uchwyt. |
GetFieldFromHandle(RuntimeFieldHandle, RuntimeTypeHandle) |
Pobiera wartość FieldInfo dla pola reprezentowanego przez określony uchwyt dla określonego typu ogólnego. |
GetHashCode() |
Zwraca wartość skrótu dla tego wystąpienia. |
GetHashCode() |
Zwraca wartość skrótu dla tego wystąpienia. (Odziedziczone po MemberInfo) |
GetModifiedFieldType() |
Pobiera zmodyfikowany typ tego obiektu pola. |
GetOptionalCustomModifiers() |
Pobiera tablicę typów identyfikujących opcjonalne modyfikatory niestandardowe pola. |
GetRawConstantValue() |
Zwraca wartość literału skojarzona z polem przez kompilator. |
GetRequiredCustomModifiers() |
Pobiera tablicę typów identyfikujących wymagane modyfikatory niestandardowe właściwości. |
GetType() |
Odnajduje atrybuty pola klasy i zapewnia dostęp do metadanych pola. |
GetType() |
Odnajduje atrybuty elementu członkowskiego i zapewnia dostęp do metadanych składowych. (Odziedziczone po MemberInfo) |
GetValue(Object) |
Po zastąpieniu w klasie pochodnej zwraca wartość pola obsługiwanego przez dany obiekt. |
GetValueDirect(TypedReference) |
Zwraca wartość pola obsługiwanego przez dany obiekt. |
HasSameMetadataDefinitionAs(MemberInfo) |
Odnajduje atrybuty pola i zapewnia dostęp do metadanych pól. (Odziedziczone po MemberInfo) |
IsDefined(Type, Boolean) |
Po przesłonięciu w klasie pochodnej wskazuje, czy do tego elementu członkowskiego zastosowano co najmniej jeden atrybut określonego typu lub jego typów pochodnych. (Odziedziczone po MemberInfo) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
SetValue(Object, Object) |
Ustawia wartość pola obsługiwanego przez dany obiekt. |
SetValue(Object, Object, BindingFlags, Binder, CultureInfo) |
Po zastąpieniu w klasie pochodnej ustawia wartość pola obsługiwanego przez dany obiekt. |
SetValueDirect(TypedReference, Object) |
Ustawia wartość pola obsługiwanego przez dany obiekt. |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |
Operatory
Equality(FieldInfo, FieldInfo) |
Wskazuje, czy dwa FieldInfo obiekty są równe. |
Inequality(FieldInfo, FieldInfo) |
Wskazuje, czy dwa FieldInfo obiekty nie są równe. |
Jawne implementacje interfejsu
_FieldInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania. |
_FieldInfo.GetType() | |
_FieldInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Pobiera informacje o typie dla obiektu, których następnie można użyć do uzyskania informacji o typie interfejsu. |
_FieldInfo.GetTypeInfoCount(UInt32) |
Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 1). |
_FieldInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Umożliwia dostęp do właściwości i metod udostępnianych przez obiekt. |
_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Zestaw nazw jest mapowany na odpowiedni zestaw identyfikatorów wysyłania. (Odziedziczone po MemberInfo) |
_MemberInfo.GetType() |
Type Pobiera obiekt reprezentujący klasęMemberInfo. (Odziedziczone po MemberInfo) |
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Pobiera informacje o typie dla obiektu, których następnie można użyć do uzyskania informacji o typie interfejsu. (Odziedziczone po MemberInfo) |
_MemberInfo.GetTypeInfoCount(UInt32) |
Pobiera informację o liczbie typów interfejsów, jakie zawiera obiekt (0 lub 1). (Odziedziczone po MemberInfo) |
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Umożliwia dostęp do właściwości i metod udostępnianych przez obiekt. (Odziedziczone po MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Zwraca tablicę wszystkich atrybutów niestandardowych zdefiniowanych w tym elemencie członkowskim, z wyłączeniem nazwanych atrybutów lub pustą tablicą, jeśli nie ma atrybutów niestandardowych. (Odziedziczone po MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Zwraca tablicę atrybutów niestandardowych zdefiniowanych na tym elemencie członkowskim, identyfikowaną przez typ lub pustą tablicę, jeśli nie ma atrybutów niestandardowych tego typu. (Odziedziczone po MemberInfo) |
ICustomAttributeProvider.IsDefined(Type, Boolean) |
Wskazuje, czy na tym elemencie członkowskim zdefiniowano jedno lub więcej wystąpień |
Metody rozszerzania
GetCustomAttribute(MemberInfo, Type) |
Pobiera atrybut niestandardowy określonego typu, który jest stosowany do określonego elementu członkowskiego. |
GetCustomAttribute(MemberInfo, Type, Boolean) |
Pobiera atrybut niestandardowy określonego typu, który jest stosowany do określonego elementu członkowskiego, i opcjonalnie sprawdza przodków tego elementu członkowskiego. |
GetCustomAttribute<T>(MemberInfo) |
Pobiera atrybut niestandardowy określonego typu, który jest stosowany do określonego elementu członkowskiego. |
GetCustomAttribute<T>(MemberInfo, Boolean) |
Pobiera atrybut niestandardowy określonego typu, który jest stosowany do określonego elementu członkowskiego, i opcjonalnie sprawdza przodków tego elementu członkowskiego. |
GetCustomAttributes(MemberInfo) |
Pobiera kolekcję atrybutów niestandardowych, które są stosowane do określonego elementu członkowskiego. |
GetCustomAttributes(MemberInfo, Boolean) |
Pobiera kolekcję atrybutów niestandardowych, które są stosowane do określonego elementu członkowskiego, i opcjonalnie sprawdza przodków tego elementu członkowskiego. |
GetCustomAttributes(MemberInfo, Type) |
Pobiera kolekcję atrybutów niestandardowych określonego typu, które są stosowane do określonego elementu członkowskiego. |
GetCustomAttributes(MemberInfo, Type, Boolean) |
Pobiera kolekcję atrybutów niestandardowych określonego typu, które są stosowane do określonego elementu członkowskiego, i opcjonalnie sprawdza przodków tego elementu członkowskiego. |
GetCustomAttributes<T>(MemberInfo) |
Pobiera kolekcję atrybutów niestandardowych określonego typu, które są stosowane do określonego elementu członkowskiego. |
GetCustomAttributes<T>(MemberInfo, Boolean) |
Pobiera kolekcję atrybutów niestandardowych określonego typu, które są stosowane do określonego elementu członkowskiego, i opcjonalnie sprawdza przodków tego elementu członkowskiego. |
IsDefined(MemberInfo, Type) |
Wskazuje, czy atrybuty niestandardowe określonego typu są stosowane do określonego elementu członkowskiego. |
IsDefined(MemberInfo, Type, Boolean) |
Wskazuje, czy atrybuty niestandardowe określonego typu są stosowane do określonego elementu członkowskiego i, opcjonalnie, stosowane do jego elementów nadrzędnych. |
GetMetadataToken(MemberInfo) |
Pobiera token metadanych dla danego elementu członkowskiego, jeśli jest dostępny. |
HasMetadataToken(MemberInfo) |
Zwraca wartość wskazującą, czy token metadanych jest dostępny dla określonego elementu członkowskiego. |
Dotyczy
Bezpieczeństwo wątkowe
Ten typ jest bezpieczny wątkowo.