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 dotyczące pola z FieldInfo klasy, a następnie wyświetla atrybuty pól.
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 GetField lub Type obiektu .
Pola są zmiennymi zdefiniowanymi w klasie. FieldInfo Zapewnia dostęp do metadanych dla pola w klasie oraz zapewnia zestaw dynamiczny i zapewnia funkcje dla pola. Klasa nie jest ładowana do pamięci, dopóki nie wywołaj obiektu lub wywołaj go.
Notatki 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
| Nazwa | Opis |
|---|---|
| FieldInfo() |
Inicjuje nowe wystąpienie klasy |
Właściwości
| Nazwa | Opis |
|---|---|
| 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 Assembly, czyli 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 odwołuje się do co najmniej jednego zestawu przechowywanego w kolekcji AssemblyLoadContext. (Odziedziczone po MemberInfo) |
| IsFamily |
Pobiera wartość wskazującą, czy widoczność tego pola jest opisana przez Family, czyli pole jest widoczne tylko w ramach klasy i klas pochodnych. |
| IsFamilyAndAssembly |
Pobiera wartość wskazującą, czy widoczność tego pola jest opisana przez FamANDAssemparametr ; 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 FamORAssem, czyli, do pola można uzyskać dostęp przez klasy pochodne, gdziekolwiek 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 ma krytyczne znaczenie 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. |
| MetadataToken |
Pobiera wartość identyfikującą element metadanych. (Odziedziczone po MemberInfo) |
| Module |
Pobiera moduł, w którym zdefiniowano typ, który deklaruje element członkowski reprezentowany przez bieżący MemberInfo . (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
| Nazwa | Opis |
|---|---|
| Equals(Object) |
Zwraca wartość wskazującą, czy to wystąpienie jest równe określonemu obiektowi. |
| 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 zastosowanych do elementu członkowskiego docelowego. (Odziedziczone po MemberInfo) |
| GetFieldFromHandle(RuntimeFieldHandle, RuntimeTypeHandle) |
FieldInfo Pobiera element dla pola reprezentowanego przez określony uchwyt dla określonego typu ogólnego. |
| GetFieldFromHandle(RuntimeFieldHandle) |
FieldInfo Pobiera element dla pola reprezentowanego przez określony uchwyt. |
| GetHashCode() |
Zwraca kod skrótu dla tego wystąpienia. |
| 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 pól. |
| 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 zastąpieniu 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 Object. (Odziedziczone po Object) |
| SetValue(Object, Object, BindingFlags, Binder, CultureInfo) |
Po zastąpieniu w klasie pochodnej ustawia wartość pola obsługiwanego przez dany obiekt. |
| SetValue(Object, Object) |
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
| Nazwa | Opis |
|---|---|
| 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
| Nazwa | Opis |
|---|---|
| _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) |
Zapewnia dostęp do właściwości i metod uwidocznionych 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() |
Pobiera obiekt reprezentujący klasę TypeMemberInfo . (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) |
Zapewnia dostęp do właściwości i metod uwidocznionych 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 pustej tablicy, 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, zidentyfikowaną 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 |
Metody rozszerzania
| Nazwa | Opis |
|---|---|
| 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(MemberInfo, Type) |
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. |
| GetCustomAttribute<T>(MemberInfo) |
Pobiera atrybut niestandardowy określonego typu, który jest stosowany 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, 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(MemberInfo, Type) |
Pobiera kolekcję atrybutów niestandardowych określonego typu, które są stosowane do określonego elementu członkowskiego. |
| GetCustomAttributes(MemberInfo) |
Pobiera kolekcję atrybutów niestandardowych, 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. |
| GetCustomAttributes<T>(MemberInfo) |
Pobiera kolekcję atrybutów niestandardowych określonego typu, które są stosowane do określonego elementu członkowskiego. |
| 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. |
| IsDefined(MemberInfo, Type, Boolean) |
Wskazuje, czy atrybuty niestandardowe określonego typu są stosowane do określonego elementu członkowskiego, a opcjonalnie stosowane do jego elementów nadrzędnych. |
| IsDefined(MemberInfo, Type) |
Wskazuje, czy atrybuty niestandardowe określonego typu są stosowane do określonego elementu członkowskiego. |
Dotyczy
Bezpieczeństwo wątkowe
Ten typ jest bezpieczny wątkiem.