FieldInfo Osztály

Definíció

Felderíti egy mező attribútumait, és hozzáférést biztosít a mező metaadataihoz.

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
Öröklődés
FieldInfo
Származtatott
Attribútumok
Megvalósítás

Példák

Az alábbi példa a Type.GetFields metódussal lekéri a mezővel kapcsolatos információkat az osztályból, majd megjeleníti a FieldInfo mezőattribútumokat.

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

Megjegyzések

A mezőadatok metaadatokból származnak. Az FieldInfo osztály nem rendelkezik nyilvános konstruktorsal. FieldInfoobjektumokat egy objektum vagy GetFields metódus meghívásával GetFieldType lehet beszerezni.

A mezők az osztályban definiált változók. FieldInfo hozzáférést biztosít egy osztályon belüli mező metaadataihoz, és dinamikus készletet biztosít, és lekéri a mező funkcióit. Az osztály nem töltődik be a memóriába, amíg az objektum nem hívja meg vagy nem hívja meg a lekérést.

Megjegyzések az implementálókhoz

Ha örököl, FieldInfofelül kell bírálnia a következő tagokat: GetValue(Object) és SetValue(Object, Object, BindingFlags, Binder, CultureInfo).

Konstruktorok

Name Description
FieldInfo()

Inicializálja a FieldInfo osztály új példányát.

Tulajdonságok

Name Description
Attributes

Lekéri a mezőhöz társított attribútumokat.

CustomAttributes

Lekéri a tag egyéni attribútumait tartalmazó gyűjteményt.

(Öröklődés forrása MemberInfo)
DeclaringType

Lekéri a tagot deklaráló osztályt.

(Öröklődés forrása MemberInfo)
FieldHandle

RuntimeFieldHandleLekéri a mezőt, amely egy mező belső metaadat-ábrázolásának leírója.

FieldType

Lekéri ennek a mezőobjektumnak a típusát.

IsAssembly

Egy értéket kap, amely azt jelzi, hogy a mező lehetséges láthatóságát az határozza-e meg Assembly; vagyis a mező legfeljebb az ugyanazon szerelvény más típusai számára látható, és nem látható a szerelvényen kívüli származtatott típusok számára.

IsCollectible

Olyan értéket kap, amely jelzi, hogy ez az MemberInfo objektum egy vagy több gyűjteményben tárolt szerelvényre hivatkozik-e AssemblyLoadContext.

(Öröklődés forrása MemberInfo)
IsFamily

Egy értéket kap, amely azt jelzi, hogy a mező láthatóságát a rendszer leírja-e Family; vagyis a mező csak az osztályán és a származtatott osztályán belül látható.

IsFamilyAndAssembly

Egy értéket kap, amely jelzi, hogy a mező láthatóságát a program ismerteti-e FamANDAssem; vagyis a mező származtatott osztályokból érhető el, de csak akkor, ha ugyanabban a szerelvényben vannak.

IsFamilyOrAssembly

Egy értéket kap, amely jelzi, hogy a mező lehetséges láthatóságát a következő írja-e le FamORAssem: vagyis a mező elérhető származtatott osztályokban, bárhol is vannak, és az ugyanabban a szerelvényben lévő osztályok szerint.

IsInitOnly

Egy értéket kap, amely jelzi, hogy a mező csak a konstruktor törzsében állítható-e be.

IsLiteral

Beolvas egy értéket, amely jelzi, hogy az érték fordításkor van-e megírva, és nem módosítható.

IsNotSerialized
Elavult.

Beolvas egy értéket, amely jelzi, hogy a mező rendelkezik-e attribútummal NotSerialized .

IsPinvokeImpl

Beolvas egy értéket, amely jelzi, hogy a megfelelő PinvokeImpl attribútum be van-e állítva.FieldAttributes

IsPrivate

Beolvas egy értéket, amely jelzi, hogy a mező privát-e.

IsPublic

Egy értéket kap, amely jelzi, hogy a mező nyilvános-e.

IsSecurityCritical

Olyan értéket kap, amely jelzi, hogy az aktuális mező biztonsági szempontból kritikus vagy biztonsági szempontból biztonságos-kritikus az aktuális megbízhatósági szinten.

IsSecuritySafeCritical

Olyan értéket kap, amely jelzi, hogy az aktuális mező biztonsági szempontból biztonságos-kritikus-e az aktuális megbízhatósági szinten.

IsSecurityTransparent

Olyan értéket kap, amely jelzi, hogy az aktuális mező transzparens-e az aktuális megbízhatósági szinten.

IsSpecialName

Beolvas egy értéket, amely jelzi, hogy a megfelelő SpecialName attribútum be van-e állítva az FieldAttributes enumerátorban.

IsStatic

Egy értéket kap, amely jelzi, hogy a mező statikus-e.

MemberType

Beolvas egy MemberTypes értéket, amely azt jelzi, hogy ez a tag egy mező.

MetadataToken

Egy metaadat-elemet azonosító értéket kap.

(Öröklődés forrása MemberInfo)
Module

Lekéri azt a modult, amelyben az aktuális MemberInfo által képviselt tagot deklaráló típus van definiálva.

(Öröklődés forrása MemberInfo)
Name

Lekéri az aktuális tag nevét.

(Öröklődés forrása MemberInfo)
ReflectedType

Lekéri a példány beszerzéséhez használt osztályobjektumot MemberInfo.

(Öröklődés forrása MemberInfo)

Metódusok

Name Description
Equals(Object)

Olyan értéket ad vissza, amely jelzi, hogy ez a példány egyenlő-e egy adott objektummal.

GetCustomAttributes(Boolean)

Ha egy származtatott osztályban felül van bírálva, a tagra alkalmazott összes egyéni attribútum tömbét adja vissza.

(Öröklődés forrása MemberInfo)
GetCustomAttributes(Type, Boolean)

Ha egy származtatott osztály felül van bírálva, a tagra alkalmazott és a tag által Typeazonosított egyéni attribútumokból álló tömböt ad vissza.

(Öröklődés forrása MemberInfo)
GetCustomAttributesData()

Visszaadja a CustomAttributeData céltagra alkalmazott attribútumok adatait képviselő objektumok listáját.

(Öröklődés forrása MemberInfo)
GetFieldFromHandle(RuntimeFieldHandle, RuntimeTypeHandle)

FieldInfo Lekéri a megadott leíró által képviselt mező értékét a megadott általános típushoz.

GetFieldFromHandle(RuntimeFieldHandle)

FieldInfo Lekéri a megadott leíró által képviselt mező értékét.

GetHashCode()

A példány kivonatkódját adja vissza.

GetModifiedFieldType()

Lekéri a mezőobjektum módosított típusát.

GetOptionalCustomModifiers()

Lekéri a mező választható egyéni módosítóinak azonosítására szolgáló típustömböt.

GetRawConstantValue()

Egy fordító által a mezőhöz társított literális értéket ad vissza.

GetRequiredCustomModifiers()

Lekéri a tulajdonság szükséges egyéni módosítóinak azonosítására szolgáló típusokat tartalmazó tömböt.

GetType()

Felderíti egy osztálymező attribútumait, és hozzáférést biztosít a mező metaadataihoz.

GetValue(Object)

Ha egy származtatott osztályban felül van bírálva, egy adott objektum által támogatott mező értékét adja vissza.

GetValueDirect(TypedReference)

Egy adott objektum által támogatott mező értékét adja vissza.

HasSameMetadataDefinitionAs(MemberInfo)

Felderíti egy mező attribútumait, és hozzáférést biztosít a mező metaadataihoz.

(Öröklődés forrása MemberInfo)
IsDefined(Type, Boolean)

Ha egy származtatott osztályban felül van bírálva, azt jelzi, hogy a rendszer a megadott típus vagy annak származtatott típusainak egy vagy több attribútumát alkalmazza-e erre a tagra.

(Öröklődés forrása MemberInfo)
MemberwiseClone()

Az aktuális Objectpéldány sekély másolatát hozza létre.

(Öröklődés forrása Object)
SetValue(Object, Object, BindingFlags, Binder, CultureInfo)

Ha egy származtatott osztályban felül van bírálva, az adott objektum által támogatott mező értékét állítja be.

SetValue(Object, Object)

Az adott objektum által támogatott mező értékét állítja be.

SetValueDirect(TypedReference, Object)

Az adott objektum által támogatott mező értékét állítja be.

ToString()

Az aktuális objektumot jelképező sztringet ad vissza.

(Öröklődés forrása Object)

Operátorok

Name Description
Equality(FieldInfo, FieldInfo)

Azt jelzi, hogy két FieldInfo objektum egyenlő-e.

Inequality(FieldInfo, FieldInfo)

Azt jelzi, hogy két FieldInfo objektum nem egyenlő-e.

Explicit interfész-implementációk

Name Description
_FieldInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Névkészletet képez le a küldési azonosítók megfelelő készletére.

_FieldInfo.GetType()

Lekéri a Type típust FieldInfo képviselő objektumot.

_FieldInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Lekéri egy objektum típusadatait, amelyek aztán a felület típusadatainak lekérésére használhatók.

_FieldInfo.GetTypeInfoCount(UInt32)

Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1).

_FieldInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz.

_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Névkészletet képez le a küldési azonosítók megfelelő készletére.

(Öröklődés forrása MemberInfo)
_MemberInfo.GetType()

Type Lekéri az MemberInfo osztályt jelképező objektumot.

(Öröklődés forrása MemberInfo)
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Lekéri egy objektum típusadatait, amelyek aztán a felület típusadatainak lekérésére használhatók.

(Öröklődés forrása MemberInfo)
_MemberInfo.GetTypeInfoCount(UInt32)

Lekéri az objektumok által biztosított típusinformációs felületek számát (0 vagy 1).

(Öröklődés forrása MemberInfo)
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Hozzáférést biztosít az objektumok által közzétett tulajdonságokhoz és metódusokhoz.

(Öröklődés forrása MemberInfo)
ICustomAttributeProvider.GetCustomAttributes(Boolean)

A tagon definiált összes egyéni attribútum tömbjének értékét adja vissza, kivéve az elnevezett attribútumokat, vagy üres tömböt, ha nincsenek egyéni attribútumok.

(Öröklődés forrása MemberInfo)
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean)

A tagon definiált egyéni attribútumokat tartalmazó tömböt ad vissza, amely típus szerint van azonosítva, vagy üres tömböt ad vissza, ha nincsenek ilyen típusú egyéni attribútumok.

(Öröklődés forrása MemberInfo)
ICustomAttributeProvider.IsDefined(Type, Boolean)

Azt jelzi, hogy egy vagy több példány attributeType van-e definiálva ezen a tagon.

(Öröklődés forrása MemberInfo)

Bővítő metódusok

Name Description
GetCustomAttribute(MemberInfo, Type, Boolean)

Lekéri a megadott típusú egyéni attribútumot, amely egy adott tagra lesz alkalmazva, és opcionálisan az adott tag elődeit vizsgálja meg.

GetCustomAttribute(MemberInfo, Type)

Egy megadott típusú egyéni attribútumot kér le, amelyet egy adott tagra alkalmaz.

GetCustomAttribute<T>(MemberInfo, Boolean)

Lekéri a megadott típusú egyéni attribútumot, amely egy adott tagra lesz alkalmazva, és opcionálisan az adott tag elődeit vizsgálja meg.

GetCustomAttribute<T>(MemberInfo)

Egy megadott típusú egyéni attribútumot kér le, amelyet egy adott tagra alkalmaz.

GetCustomAttributes(MemberInfo, Boolean)

Lekéri a megadott tagra alkalmazott egyéni attribútumok gyűjteményét, és opcionálisan az adott tag őseit vizsgálja meg.

GetCustomAttributes(MemberInfo, Type, Boolean)

Lekéri a megadott típusú egyéni attribútumok gyűjteményét, amelyek egy adott tagra vonatkoznak, és opcionálisan az adott tag elődeit is érintik.

GetCustomAttributes(MemberInfo, Type)

Egy megadott típusú egyéni attribútumok gyűjteményét kéri le, amelyeket egy adott tagra alkalmaz.

GetCustomAttributes(MemberInfo)

Egy adott tagra alkalmazott egyéni attribútumok gyűjteményét kéri le.

GetCustomAttributes<T>(MemberInfo, Boolean)

Lekéri a megadott típusú egyéni attribútumok gyűjteményét, amelyek egy adott tagra vonatkoznak, és opcionálisan az adott tag elődeit is érintik.

GetCustomAttributes<T>(MemberInfo)

Egy megadott típusú egyéni attribútumok gyűjteményét kéri le, amelyeket egy adott tagra alkalmaz.

GetMetadataToken(MemberInfo)

Ha elérhető, lekéri az adott tag metaadat-jogkivonatát.

HasMetadataToken(MemberInfo)

Olyan értéket ad vissza, amely jelzi, hogy elérhető-e metaadat-jogkivonat a megadott tag számára.

IsDefined(MemberInfo, Type, Boolean)

Azt jelzi, hogy a megadott típusú egyéni attribútumok alkalmazhatók-e egy adott tagra, és szükség esetén alkalmazva vannak-e az elődökre.

IsDefined(MemberInfo, Type)

Azt jelzi, hogy a megadott típusú egyéni attribútumok alkalmazhatók-e egy adott tagra.

A következőre érvényes:

Szálbiztonság

Ez a típus szálbiztos.

Lásd még