FieldInfo Třída

Definice

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
FieldInfo
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 FieldInfo třídy.

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á RuntimeFieldHandle, což je popisovač interní metadata reprezentace pole.

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á NotSerialized atribut.

IsPinvokeImpl

Získá hodnotu určující, zda odpovídající PinvokeImpl atribut je nastaven v FieldAttributes.

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í SpecialName atribut nastaven v enumerátoru FieldAttributes .

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 MemberInfo.

(Zděděno od MemberInfo)

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()

Type Získá objekt představující FieldInfo typ.

_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 attributeType definována jedna nebo více instancí.

(Zděděno od MemberInfo)

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.

Viz také