FieldInfo Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Identifie les attributs d'un champ et donne accès aux métadonnées du champ.
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
- Héritage
- Dérivé
- Attributs
- Implémente
Exemples
L’exemple suivant utilise la Type.GetFields méthode pour obtenir les informations relatives aux champs de la FieldInfo classe, puis affiche les attributs de champ.
using namespace System;
using namespace System::Reflection;
public ref class FieldInfoClass
{
public:
int myField1;
protected:
String^ myField2;
};
int main()
{
array<FieldInfo^>^myFieldInfo;
Type^ myType = FieldInfoClass::typeid;
// Get the type and fields of FieldInfoClass.
myFieldInfo = myType->GetFields( static_cast<BindingFlags>(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 );
}
}
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
Remarques
Les informations de champ sont obtenues à partir de métadonnées. La FieldInfo classe n’a pas de constructeur public.
FieldInfo les objets sont obtenus en appelant la GetFields méthode ou GetField d’un Type
objet.
Les champs sont des variables définies dans la classe . FieldInfo fournit l’accès aux métadonnées d’un champ au sein d’une classe et fournit des fonctionnalités dynamiques d’ensemble et d’obtention pour le champ. La classe n’est pas chargée en mémoire tant que l’appel ou l’obtention n’est pas appelé sur l’objet.
Notes pour les responsables de l’implémentation
Lorsque vous héritez de FieldInfo, vous devez substituer les membres suivants : GetValue(Object) et SetValue(Object, Object, BindingFlags, Binder, CultureInfo).
Constructeurs
FieldInfo() |
Initialise une nouvelle instance de la classe |
Propriétés
Attributes |
Obtient les attributs associés à ce champ. |
CustomAttributes |
Obtient une collection qui contient les attributs personnalisés de ce membre. (Hérité de MemberInfo) |
DeclaringType |
Obtient la classe qui déclare ce membre. (Hérité de MemberInfo) |
FieldHandle |
Obtient |
FieldType |
Obtient le type de cet objet champ. |
IsAssembly |
Obtient une valeur indiquant si la visibilité potentielle de ce champ est décrite par Assembly, c'est-à-dire si le champ est visible au maximum par d'autres types du même assembly, et n'est pas visible par des types dérivés à l'extérieur de l'assembly. |
IsCollectible |
Obtient une valeur qui indique si cet objet MemberInfo fait partie d’un assembly contenu dans un AssemblyLoadContext pouvant être collecté. (Hérité de MemberInfo) |
IsFamily |
Obtient une valeur indiquant si la visibilité de ce champ est décrite par Family, c'est-à-dire si le champ est visible uniquement dans sa classe et dans ses classes dérivées. |
IsFamilyAndAssembly |
Obtient une valeur indiquant si la visibilité de ce champ est décrite par FamANDAssem, c'est-à-dire si le champ peut faire l'objet d'un accès par des classes dérivées, mais uniquement si elles se trouvent dans le même assembly. |
IsFamilyOrAssembly |
Obtient une valeur indiquant si la visibilité potentielle de ce champ est décrite par FamORAssem, c'est-à-dire si le champ peut faire l'objet d'un accès par des classes dérivées où qu'elles se trouvent, et par des classes du même assembly. |
IsInitOnly |
Obtient une valeur indiquant si le champ peut uniquement être défini dans le corps du constructeur. |
IsLiteral |
Obtient une valeur indiquant si la valeur est écrite au moment de la compilation et si elle n'est pas modifiable. |
IsNotSerialized |
Obsolète.
Obtient une valeur indiquant si ce champ est doté de l'attribut |
IsPinvokeImpl |
Obtient une valeur indiquant si l'attribut |
IsPrivate |
Obtient une valeur indiquant si le champ est privé. |
IsPublic |
Obtient une valeur indiquant si le champ est public. |
IsSecurityCritical |
Obtient une valeur qui indique si le champ actuel est critique de sécurité (security-critical) ou critique sécurisé (security-safe-critical) au niveau de confiance actuel. |
IsSecuritySafeCritical |
Obtient une valeur qui indique si le champ actuel est critique sécurisé au niveau de confiance actuel. |
IsSecurityTransparent |
Obtient une valeur qui indique si le champ actuel est transparent au niveau de confiance actuel. |
IsSpecialName |
Obtient une valeur indiquant si l'attribut |
IsStatic |
Obtient une valeur indiquant si le champ est statique. |
MemberType |
Obtient une valeur MemberTypes indiquant que ce membre est un champ. |
MemberType |
En cas de substitution dans une classe dérivée, récupère une valeur MemberTypes indiquant le type du membre (méthode, constructeur, événement, etc.). (Hérité de MemberInfo) |
MetadataToken |
Obtient une valeur qui identifie un élément de métadonnées. (Hérité de MemberInfo) |
Module |
Obtient le module dans lequel le type qui déclare le membre représenté par le MemberInfo actuel est défini. (Hérité de MemberInfo) |
Name |
Obtient le nom du membre actuel. (Hérité de MemberInfo) |
ReflectedType |
Obtient l'objet classe utilisé pour obtenir cette instance de |
Méthodes
Equals(Object) |
Retourne une valeur qui indique si cette instance est égale à un objet spécifié. |
Equals(Object) |
Retourne une valeur qui indique si cette instance est égale à un objet spécifié. (Hérité de MemberInfo) |
GetCustomAttributes(Boolean) |
En cas de substitution dans une classe dérivée, retourne un tableau de tous les attributs personnalisés appliqués à ce membre. (Hérité de MemberInfo) |
GetCustomAttributes(Type, Boolean) |
En cas de substitution dans une classe dérivée, retourne un tableau d’attributs personnalisés appliqués à ce membre et identifiés par Type. (Hérité de MemberInfo) |
GetCustomAttributesData() |
Renvoie une liste d’objets CustomAttributeData représentant des données sur les attributs qui ont été appliqués au membre cible. (Hérité de MemberInfo) |
GetFieldFromHandle(RuntimeFieldHandle) |
Obtient FieldInfo pour le champ représenté par le handle spécifié. |
GetFieldFromHandle(RuntimeFieldHandle, RuntimeTypeHandle) |
Obtient FieldInfo pour le champ représenté par le handle spécifié, pour le type générique donné. |
GetHashCode() |
Retourne le code de hachage de cette instance. |
GetHashCode() |
Retourne le code de hachage de cette instance. (Hérité de MemberInfo) |
GetModifiedFieldType() |
Obtient le type modifié de cet objet de champ. |
GetOptionalCustomModifiers() |
Obtient un tableau de types identifiant les modificateurs personnalisés facultatifs du champ. |
GetRawConstantValue() |
Retourne une valeur littérale associée au champ par un compilateur. |
GetRequiredCustomModifiers() |
Obtient un tableau de types identifiant les modificateurs personnalisés requis de la propriété. |
GetType() |
Identifie les attributs d’un champ de classe et donne accès à ses métadonnées. |
GetType() |
Identifie les attributs d’un membre et donne accès à ses métadonnées. (Hérité de MemberInfo) |
GetValue(Object) |
En cas de substitution dans une classe dérivée, retourne la valeur d’un champ pris en charge par un objet donné. |
GetValueDirect(TypedReference) |
Retourne la valeur d'un champ pris en charge par un objet donné. |
HasSameMetadataDefinitionAs(MemberInfo) |
Identifie les attributs d'un champ et donne accès aux métadonnées du champ. (Hérité de MemberInfo) |
IsDefined(Type, Boolean) |
En cas de substitution dans une classe dérivée, indique si un ou plusieurs attributs du type spécifié ou de ses types dérivés sont appliqués à ce membre. (Hérité de MemberInfo) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
SetValue(Object, Object) |
Définit la valeur du champ pris en charge par l’objet donné. |
SetValue(Object, Object, BindingFlags, Binder, CultureInfo) |
En cas de substitution dans une classe dérivée, définit la valeur du champ pris en charge par l'objet donné. |
SetValueDirect(TypedReference, Object) |
Définit la valeur du champ pris en charge par l’objet donné. |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |
Opérateurs
Equality(FieldInfo, FieldInfo) |
Indique si deux objets FieldInfo sont égaux. |
Inequality(FieldInfo, FieldInfo) |
Indique si deux objets FieldInfo ne sont pas égaux. |
Implémentations d’interfaces explicites
_FieldInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. |
_FieldInfo.GetType() | |
_FieldInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Récupère les informations de type pour un objet, qui peuvent être utilisées ensuite pour obtenir les informations de type d'une interface. |
_FieldInfo.GetTypeInfoCount(UInt32) |
Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). |
_FieldInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fournit l'accès aux propriétés et aux méthodes exposées par un objet. |
_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de MemberInfo) |
_MemberInfo.GetType() |
Obtient un objet Type représentant la classe MemberInfo. (Hérité de MemberInfo) |
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Récupère les informations de type pour un objet, qui peuvent être utilisées ensuite pour obtenir les informations de type d'une interface. (Hérité de MemberInfo) |
_MemberInfo.GetTypeInfoCount(UInt32) |
Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de MemberInfo) |
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fournit l'accès aux propriétés et aux méthodes exposées par un objet. (Hérité de MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Retourne un tableau de tous les attributs personnalisés définis sur ce membre, en dehors des attributs nommés, ou un tableau vide s’il n’y a aucun attribut personnalisé. (Hérité de MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Retourne un tableau d’attributs personnalisés définis sur ce membre, identifiés par type, ou un tableau vide s’il n’y a aucun attribut personnalisé de ce type. (Hérité de MemberInfo) |
ICustomAttributeProvider.IsDefined(Type, Boolean) |
Indique si une ou plusieurs instances de |
Méthodes d’extension
GetCustomAttribute(MemberInfo, Type) |
Récupère un attribut personnalisé d'un type spécifié qui est appliqué à un membre spécifié. |
GetCustomAttribute(MemberInfo, Type, Boolean) |
Récupère un attribut personnalisé d'un type spécifié qui est appliqué à un membre spécifié, et inspecte éventuellement les ancêtres de ce membre. |
GetCustomAttribute<T>(MemberInfo) |
Récupère un attribut personnalisé d'un type spécifié qui est appliqué à un membre spécifié. |
GetCustomAttribute<T>(MemberInfo, Boolean) |
Récupère un attribut personnalisé d'un type spécifié qui est appliqué à un membre spécifié, et inspecte éventuellement les ancêtres de ce membre. |
GetCustomAttributes(MemberInfo) |
Récupère une collection d'attributs personnalisés qui sont appliqués à un membre spécifié. |
GetCustomAttributes(MemberInfo, Boolean) |
Récupère une collection d'attributs personnalisés qui sont appliqués à un membre spécifié, et inspecte éventuellement les ancêtres de ce membre. |
GetCustomAttributes(MemberInfo, Type) |
Extrait une collection d'attributs personnalisés d'un type spécifié qui sont appliqués à un membre spécifié. |
GetCustomAttributes(MemberInfo, Type, Boolean) |
Extrait une collection d'attributs personnalisés d'un type spécifié qui sont appliqués à un membre spécifié, et inspecte éventuellement les ancêtres de ce membre. |
GetCustomAttributes<T>(MemberInfo) |
Extrait une collection d'attributs personnalisés d'un type spécifié qui sont appliqués à un membre spécifié. |
GetCustomAttributes<T>(MemberInfo, Boolean) |
Extrait une collection d'attributs personnalisés d'un type spécifié qui sont appliqués à un membre spécifié, et inspecte éventuellement les ancêtres de ce membre. |
IsDefined(MemberInfo, Type) |
Indique si des attributs personnalisés d'un type spécifié sont appliqués à un membre spécifié. |
IsDefined(MemberInfo, Type, Boolean) |
Indique si les attributs personnalisés d'un type spécifié sont appliqués à un membre spécifié, et, éventuellement, appliqués à ses ancêtres. |
GetMetadataToken(MemberInfo) |
Obtient un jeton de métadonnées pour le membre donné, s’il est disponible. |
HasMetadataToken(MemberInfo) |
Retourne une valeur qui indique si un jeton de métadonnées est disponible pour le membre spécifié. |
S’applique à
Cohérence de thread
Ce type est thread-safe.