FieldInfo Klass

Definition

Identifierar attributen för ett fält och ger åtkomst till fältmetadata.

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
Arv
FieldInfo
Härledda
Attribut
Implementeringar

Exempel

I följande exempel används Type.GetFields metoden för att hämta fältrelaterad information från FieldInfo klassen och visar sedan fältattribut.

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

Kommentarer

Fältinformationen hämtas från metadata. Klassen FieldInfo har ingen offentlig konstruktor. FieldInfo objekt hämtas genom att antingen GetFieldsGetField anropa eller -metoden för ett Type objekt.

Fält är variabler som definierats i klassen. FieldInfo ger åtkomst till metadata för ett fält i en klass och ger dynamisk uppsättning och hämta funktioner för fältet. Klassen läses inte in i minnet förrän anropa eller hämta anropas på objektet.

Anteckningar till implementerare

När du ärver från FieldInfomåste du åsidosätta följande medlemmar: GetValue(Object) och SetValue(Object, Object, BindingFlags, Binder, CultureInfo).

Konstruktorer

Name Description
FieldInfo()

Initierar en ny instans av FieldInfo klassen.

Egenskaper

Name Description
Attributes

Hämtar attributen som är associerade med det här fältet.

CustomAttributes

Hämtar en samling som innehåller den här medlemmens anpassade attribut.

(Ärvd från MemberInfo)
DeclaringType

Hämtar klassen som deklarerar den här medlemmen.

(Ärvd från MemberInfo)
FieldHandle

Hämtar en RuntimeFieldHandle, som är en referens till den interna metadatarepresentationen av ett fält.

FieldType

Hämtar typen av det här fältobjektet.

IsAssembly

Hämtar ett värde som anger om den potentiella synligheten för det här fältet beskrivs av Assembly, dvs. fältet visas som mest för andra typer i samma sammansättning och är inte synligt för härledda typer utanför sammansättningen.

IsFamily

Hämtar ett värde som anger om synligheten för det här fältet beskrivs av Family. Det innebär att fältet endast är synligt inom dess klass och härledda klasser.

IsFamilyAndAssembly

Hämtar ett värde som anger om synligheten för det här fältet beskrivs av FamANDAssem. Det innebär att fältet kan nås från härledda klasser, men bara om de finns i samma sammansättning.

IsFamilyOrAssembly

Hämtar ett värde som anger om den potentiella synligheten för det här fältet beskrivs av FamORAssem. Det innebär att fältet kan nås av härledda klasser var de än är och av klasser i samma sammansättning.

IsInitOnly

Hämtar ett värde som anger om fältet bara kan anges i konstruktorns brödtext.

IsLiteral

Hämtar ett värde som anger om värdet skrivs vid kompileringstillfället och inte kan ändras.

IsNotSerialized

Hämtar ett värde som anger om det här fältet har attributet NotSerialized .

IsPinvokeImpl

Hämtar ett värde som anger om motsvarande PinvokeImpl attribut anges i FieldAttributes.

IsPrivate

Hämtar ett värde som anger om fältet är privat.

IsPublic

Hämtar ett värde som anger om fältet är offentligt.

IsSecurityCritical

Hämtar ett värde som anger om det aktuella fältet är säkerhetskritiskt eller säkerhetssäkert kritiskt på den aktuella förtroendenivån.

IsSecuritySafeCritical

Hämtar ett värde som anger om det aktuella fältet är säkerhetssäkert kritiskt på den aktuella förtroendenivån.

IsSecurityTransparent

Hämtar ett värde som anger om det aktuella fältet är transparent på den aktuella förtroendenivån.

IsSpecialName

Hämtar ett värde som anger om motsvarande SpecialName attribut anges i uppräknaren FieldAttributes .

IsStatic

Hämtar ett värde som anger om fältet är statiskt.

MemberType

Hämtar ett MemberTypes värde som anger att den här medlemmen är ett fält.

MetadataToken

Hämtar ett värde som identifierar ett metadataelement.

(Ärvd från MemberInfo)
Module

Hämtar modulen där den typ som deklarerar medlemmen som representeras av den aktuella MemberInfo definieras.

(Ärvd från MemberInfo)
Name

Hämtar namnet på den aktuella medlemmen.

(Ärvd från MemberInfo)
ReflectedType

Hämtar klassobjektet som användes för att hämta den här instansen av MemberInfo.

(Ärvd från MemberInfo)

Metoder

Name Description
Equals(Object)

Returnerar ett värde som anger om den här instansen är lika med ett angivet objekt.

GetCustomAttributes(Boolean)

När den åsidosättas i en härledd klass returnerar en matris med alla anpassade attribut som tillämpas på den här medlemmen.

(Ärvd från MemberInfo)
GetCustomAttributes(Type, Boolean)

När den åsidosättas i en härledd klass returnerar en matris med anpassade attribut som tillämpas på den här medlemmen och identifieras av Type.

(Ärvd från MemberInfo)
GetCustomAttributesData()

Returnerar en lista över CustomAttributeData objekt som representerar data om de attribut som har tillämpats på målmedlemmen.

(Ärvd från MemberInfo)
GetFieldFromHandle(RuntimeFieldHandle, RuntimeTypeHandle)

Hämtar en FieldInfo för fältet som representeras av den angivna referensen för den angivna generiska typen.

GetFieldFromHandle(RuntimeFieldHandle)

Hämtar en FieldInfo för fältet som representeras av det angivna handtaget.

GetHashCode()

Returnerar hash-koden för den här instansen.

GetOptionalCustomModifiers()

Hämtar en matris med typer som identifierar valfria anpassade modifierare i fältet.

GetRawConstantValue()

Returnerar ett literalvärde som är associerat med fältet av en kompilator.

GetRequiredCustomModifiers()

Hämtar en matris med typer som identifierar nödvändiga anpassade modifierare för egenskapen.

GetType()

Identifierar attributen för ett klassfält och ger åtkomst till fältmetadata.

GetValue(Object)

När det åsidosättas i en härledd klass returneras värdet för ett fält som stöds av ett angivet objekt.

GetValueDirect(TypedReference)

Returnerar värdet för ett fält som stöds av ett angivet objekt.

HasSameMetadataDefinitionAs(MemberInfo)

Identifierar attributen för ett fält och ger åtkomst till fältmetadata.

(Ärvd från MemberInfo)
IsDefined(Type, Boolean)

När det åsidosätts i en härledd klass anger om ett eller flera attribut av den angivna typen eller av dess härledda typer tillämpas på den här medlemmen.

(Ärvd från MemberInfo)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
SetValue(Object, Object, BindingFlags, Binder, CultureInfo)

När det åsidosättas i en härledd klass anger du värdet för det fält som stöds av det angivna objektet.

SetValue(Object, Object)

Anger värdet för det fält som stöds av det angivna objektet.

SetValueDirect(TypedReference, Object)

Anger värdet för det fält som stöds av det angivna objektet.

ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Operatorer

Name Description
Equality(FieldInfo, FieldInfo)

Anger om två FieldInfo objekt är lika med.

Inequality(FieldInfo, FieldInfo)

Anger om två FieldInfo objekt inte är lika med.

Explicita gränssnittsimplementeringar

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

Mappar en uppsättning namn till en motsvarande uppsättning av sändningsidentifierare.

_FieldInfo.GetType()

Hämtar ett Type objekt som representerar FieldInfo typen.

_FieldInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Hämtar typinformationen för ett objekt, som sedan kan användas för att hämta typinformationen för ett gränssnitt.

_FieldInfo.GetTypeInfoCount(UInt32)

Hämtar antalet typinformationsgränssnitt som ett objekt tillhandahåller (antingen 0 eller 1).

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

Ger åtkomst till egenskaper och metoder som exponeras av ett objekt.

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

Mappar en uppsättning namn till en motsvarande uppsättning av sändningsidentifierare.

(Ärvd från MemberInfo)
_MemberInfo.GetType()

Hämtar ett Type objekt som representerar MemberInfo klassen.

(Ärvd från MemberInfo)
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr)

Hämtar typinformationen för ett objekt, som sedan kan användas för att hämta typinformationen för ett gränssnitt.

(Ärvd från MemberInfo)
_MemberInfo.GetTypeInfoCount(UInt32)

Hämtar antalet typinformationsgränssnitt som ett objekt tillhandahåller (antingen 0 eller 1).

(Ärvd från MemberInfo)
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Ger åtkomst till egenskaper och metoder som exponeras av ett objekt.

(Ärvd från MemberInfo)
ICustomAttributeProvider.GetCustomAttributes(Boolean)

Returnerar en matris med alla anpassade attribut som definierats för den här medlemmen, exklusive namngivna attribut eller en tom matris om det inte finns några anpassade attribut.

(Ärvd från MemberInfo)
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean)

Returnerar en matris med anpassade attribut som definierats för den här medlemmen, identifierade efter typ eller en tom matris om det inte finns några anpassade attribut av den typen.

(Ärvd från MemberInfo)
ICustomAttributeProvider.IsDefined(Type, Boolean)

Anger om en eller flera instanser av attributeType har definierats för den här medlemmen.

(Ärvd från MemberInfo)

Tilläggsmetoder

Name Description
GetCustomAttribute(MemberInfo, Type, Boolean)

Hämtar ett anpassat attribut av en angiven typ som tillämpas på en angiven medlem och kontrollerar eventuellt den medlemmens överordnade objekt.

GetCustomAttribute(MemberInfo, Type)

Hämtar ett anpassat attribut av en angiven typ som tillämpas på en angiven medlem.

GetCustomAttribute<T>(MemberInfo, Boolean)

Hämtar ett anpassat attribut av en angiven typ som tillämpas på en angiven medlem och kontrollerar eventuellt den medlemmens överordnade objekt.

GetCustomAttribute<T>(MemberInfo)

Hämtar ett anpassat attribut av en angiven typ som tillämpas på en angiven medlem.

GetCustomAttributes(MemberInfo, Boolean)

Hämtar en samling anpassade attribut som tillämpas på en angiven medlem och kontrollerar eventuellt den medlemmens överordnade.

GetCustomAttributes(MemberInfo, Type, Boolean)

Hämtar en samling anpassade attribut av en angiven typ som tillämpas på en angiven medlem och kontrollerar eventuellt den medlemmens överordnade.

GetCustomAttributes(MemberInfo, Type)

Hämtar en samling anpassade attribut av en angiven typ som tillämpas på en angiven medlem.

GetCustomAttributes(MemberInfo)

Hämtar en samling anpassade attribut som tillämpas på en angiven medlem.

GetCustomAttributes<T>(MemberInfo, Boolean)

Hämtar en samling anpassade attribut av en angiven typ som tillämpas på en angiven medlem och kontrollerar eventuellt den medlemmens överordnade.

GetCustomAttributes<T>(MemberInfo)

Hämtar en samling anpassade attribut av en angiven typ som tillämpas på en angiven medlem.

IsDefined(MemberInfo, Type, Boolean)

Anger om anpassade attribut av en angiven typ tillämpas på en angiven medlem och eventuellt tillämpas på dess överordnade.

IsDefined(MemberInfo, Type)

Anger om anpassade attribut av en angiven typ tillämpas på en angiven medlem.

Gäller för

Trådsäkerhet

Den här typen är trådsäker.

Se även