FieldInfo Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vyhledá atributy pole a poskytuje přístup k metadatům polí.
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
- Dědičnost
- Odvozené
- Atributy
- Implementuje
Příklady
Následující příklad používá metodu Type.GetFields k získání informací souvisejících s polem z FieldInfo třídy a poté zobrazí atributy pole.
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
Poznámky
Informace o poli jsou získány z metadat. Třída FieldInfo nemá veřejný konstruktor.
FieldInfo objekty jsou získány voláním GetFields nebo GetField metodou objektu Type .
Pole jsou proměnné definované ve třídě. FieldInfo poskytuje přístup k metadatům pro pole v rámci třídy a poskytuje dynamickou sadu a získat funkce pro dané pole. Třída není načtena do paměti, dokud není vyvolána nebo get volána v objektu.
Poznámky pro implementátory
Při dědění z FieldInfo, musíte přepsat následující členy: GetValue(Object) a SetValue(Object, Object, BindingFlags, Binder, CultureInfo).
Konstruktory
| Name | Description |
|---|---|
| FieldInfo() |
Inicializuje novou instanci |
Vlastnosti
| Name | Description |
|---|---|
| Attributes |
Získá atributy přidružené k tomuto poli. |
| CustomAttributes |
Získá kolekci, která obsahuje vlastní atributy tohoto člena. (Zděděno od MemberInfo) |
| DeclaringType |
Získá třídu, která deklaruje tohoto člena. (Zděděno od MemberInfo) |
| FieldHandle |
Získá |
| FieldType |
Získá typ tohoto pole objektu. |
| IsAssembly |
Získá hodnotu určující, zda potenciální viditelnost tohoto pole je popsána Assembly; to znamená, že pole je viditelné maximálně pro jiné typy ve stejném sestavení a není viditelné pro odvozené typy mimo sestavení. |
| IsCollectible |
Získá hodnotu, která označuje, zda tento MemberInfo objekt odkazuje na jedno nebo více sestavení uložených v collectible AssemblyLoadContext. (Zděděno od MemberInfo) |
| IsFamily |
Získá hodnotu určující, zda viditelnost tohoto pole je popsána Family; to znamená, že pole je viditelné pouze v rámci své třídy a odvozené třídy. |
| IsFamilyAndAssembly |
Získá hodnotu určující, zda viditelnost tohoto pole je popsána FamANDAssem; to znamená, že pole lze získat přístup z odvozených tříd, ale pouze pokud jsou ve stejném sestavení. |
| IsFamilyOrAssembly |
Získá hodnotu určující, zda potenciální viditelnost tohoto pole je popsána FamORAssem; to znamená, že pole lze získat přístup pomocí odvozených tříd bez ohledu na to, kde jsou, a podle tříd ve stejném sestavení. |
| IsInitOnly |
Získá hodnotu určující, zda pole lze nastavit pouze v těle konstruktoru. |
| IsLiteral |
Získá hodnotu určující, zda je hodnota zapsána v době kompilace a nelze ji změnit. |
| IsNotSerialized |
Zastaralé.
Získá hodnotu určující, zda toto pole má |
| IsPinvokeImpl |
Získá hodnotu určující, zda odpovídající |
| IsPrivate |
Získá hodnotu určující, zda je pole soukromé. |
| IsPublic |
Získá hodnotu určující, zda je pole veřejné. |
| IsSecurityCritical |
Získá hodnotu, která určuje, zda je aktuální pole kritické pro zabezpečení nebo bezpečné zabezpečení na aktuální úrovni důvěryhodnosti. |
| IsSecuritySafeCritical |
Získá hodnotu, která určuje, jestli je aktuální pole kritické pro zabezpečení na aktuální úrovni důvěryhodnosti. |
| IsSecurityTransparent |
Získá hodnotu, která určuje, zda je aktuální pole transparentní na aktuální úrovni důvěryhodnosti. |
| IsSpecialName |
Získá hodnotu určující, zda je odpovídající |
| IsStatic |
Získá hodnotu označující, zda je pole statické. |
| MemberType |
MemberTypes Získá hodnotu označující, že tento člen je pole. |
| MetadataToken |
Získá hodnotu, která identifikuje prvek metadat. (Zděděno od MemberInfo) |
| Module |
Získá modul, ve kterém typ, který deklaruje člen reprezentovaný proudem MemberInfo je definován. (Zděděno od MemberInfo) |
| Name |
Získá název aktuálního člena. (Zděděno od MemberInfo) |
| ReflectedType |
Získá objekt třídy, který byl použit k získání této instance |
Metody
| Name | Description |
|---|---|
| Equals(Object) |
Vrátí hodnotu, která určuje, zda je tato instance rovna zadanému objektu. |
| GetCustomAttributes(Boolean) |
Při přepsání v odvozené třídě vrátí pole všech vlastních atributů použitých na tento člen. (Zděděno od MemberInfo) |
| GetCustomAttributes(Type, Boolean) |
Při přepsání v odvozené třídě vrátí pole vlastních atributů použitých na tento člen a identifikovaný .Type (Zděděno od MemberInfo) |
| GetCustomAttributesData() |
Vrátí seznam CustomAttributeData objektů představujících data o atributech, které byly použity na cílového člena. (Zděděno od MemberInfo) |
| GetFieldFromHandle(RuntimeFieldHandle, RuntimeTypeHandle) |
FieldInfo Získá pro pole reprezentované zadaným popisovačem pro zadaný obecný typ. |
| GetFieldFromHandle(RuntimeFieldHandle) |
FieldInfo Získá pro pole reprezentované zadaným popisovačem. |
| GetHashCode() |
Vrátí kód hash pro tuto instanci. |
| GetModifiedFieldType() |
Získá upravený typ tohoto pole objektu. |
| GetOptionalCustomModifiers() |
Získá pole typů, které identifikují volitelné vlastní modifikátory pole. |
| GetRawConstantValue() |
Vrátí hodnotu literálu přidruženou k poli kompilátorem. |
| GetRequiredCustomModifiers() |
Získá pole typů, které identifikují požadované vlastní modifikátory vlastnosti. |
| GetType() |
Zjistí atributy pole třídy a poskytuje přístup k metadatům polí. |
| GetValue(Object) |
Při přepsání v odvozené třídě vrátí hodnotu pole podporovaného daným objektem. |
| GetValueDirect(TypedReference) |
Vrátí hodnotu pole podporovaného daným objektem. |
| HasSameMetadataDefinitionAs(MemberInfo) |
Vyhledá atributy pole a poskytuje přístup k metadatům polí. (Zděděno od MemberInfo) |
| IsDefined(Type, Boolean) |
Při přepsání v odvozené třídě určuje, zda jeden nebo více atributů zadaného typu nebo jeho odvozených typů se použije na tento člen. (Zděděno od MemberInfo) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| SetValue(Object, Object, BindingFlags, Binder, CultureInfo) |
Při přepsání v odvozené třídě nastaví hodnotu pole podporované daným objektem. |
| SetValue(Object, Object) |
Nastaví hodnotu pole podporovaného daným objektem. |
| SetValueDirect(TypedReference, Object) |
Nastaví hodnotu pole podporovaného daným objektem. |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Operátory
| Name | Description |
|---|---|
| Equality(FieldInfo, FieldInfo) |
Určuje, zda jsou dva FieldInfo objekty stejné. |
| Inequality(FieldInfo, FieldInfo) |
Určuje, zda jsou dva FieldInfo objekty nerovny. |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| _FieldInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání. |
| _FieldInfo.GetType() | |
| _FieldInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Načte informace o typu objektu, který lze použít k získání informací o typu pro rozhraní. |
| _FieldInfo.GetTypeInfoCount(UInt32) |
Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1). |
| _FieldInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Poskytuje přístup k vlastnostem a metodám vystaveným objektem. |
| _MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání. (Zděděno od MemberInfo) |
| _MemberInfo.GetType() |
Type Získá objekt představující MemberInfo třídu. (Zděděno od MemberInfo) |
| _MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Načte informace o typu objektu, který lze použít k získání informací o typu pro rozhraní. (Zděděno od MemberInfo) |
| _MemberInfo.GetTypeInfoCount(UInt32) |
Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1). (Zděděno od MemberInfo) |
| _MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Poskytuje přístup k vlastnostem a metodám vystaveným objektem. (Zděděno od MemberInfo) |
| ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Vrátí pole všech vlastních atributů definovaných pro tohoto člena, s výjimkou pojmenovaných atributů, nebo prázdné pole, pokud neexistují žádné vlastní atributy. (Zděděno od MemberInfo) |
| ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Vrátí pole vlastních atributů definovaných pro tento člen, identifikovaný podle typu nebo prázdné pole, pokud neexistují žádné vlastní atributy tohoto typu. (Zděděno od MemberInfo) |
| ICustomAttributeProvider.IsDefined(Type, Boolean) |
Určuje, zda je u tohoto člena |
Metody rozšíření
| Name | Description |
|---|---|
| GetCustomAttribute(MemberInfo, Type, Boolean) |
Načte vlastní atribut zadaného typu, který se použije u zadaného členu, a volitelně zkontroluje předky daného člena. |
| GetCustomAttribute(MemberInfo, Type) |
Načte vlastní atribut zadaného typu, který se použije na zadaný člen. |
| GetCustomAttribute<T>(MemberInfo, Boolean) |
Načte vlastní atribut zadaného typu, který se použije u zadaného členu, a volitelně zkontroluje předky daného člena. |
| GetCustomAttribute<T>(MemberInfo) |
Načte vlastní atribut zadaného typu, který se použije na zadaný člen. |
| GetCustomAttributes(MemberInfo, Boolean) |
Načte kolekci vlastních atributů, které se použijí na zadaného člena, a volitelně zkontroluje předky daného člena. |
| GetCustomAttributes(MemberInfo, Type, Boolean) |
Načte kolekci vlastních atributů zadaného typu, které se použijí na zadaný člen, a volitelně zkontroluje nadřazené objekty daného člena. |
| GetCustomAttributes(MemberInfo, Type) |
Načte kolekci vlastních atributů zadaného typu, které se použijí na zadaný člen. |
| GetCustomAttributes(MemberInfo) |
Načte kolekci vlastních atributů, které se použijí na zadaný člen. |
| GetCustomAttributes<T>(MemberInfo, Boolean) |
Načte kolekci vlastních atributů zadaného typu, které se použijí na zadaný člen, a volitelně zkontroluje nadřazené objekty daného člena. |
| GetCustomAttributes<T>(MemberInfo) |
Načte kolekci vlastních atributů zadaného typu, které se použijí na zadaný člen. |
| GetMetadataToken(MemberInfo) |
Získá token metadat pro daného člena, pokud je k dispozici. |
| HasMetadataToken(MemberInfo) |
Vrátí hodnotu, která určuje, zda je token metadat k dispozici pro zadaného člena. |
| IsDefined(MemberInfo, Type, Boolean) |
Určuje, zda se vlastní atributy zadaného typu použijí na zadaný člen a volitelně se použijí na jeho nadřazené objekty. |
| IsDefined(MemberInfo, Type) |
Určuje, zda jsou u zadaného člena použity vlastní atributy zadaného typu. |
Platí pro
Bezpečný přístup z více vláken
Tento typ je bezpečný pro přístup z více vláken.