Assembly.GetCustomAttributes Méthode
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.
Obtient les attributs personnalisés pour cet assembly.
Surcharges
GetCustomAttributes(Boolean) |
Obtient tous les attributs personnalisés pour cet assembly. |
GetCustomAttributes(Type, Boolean) |
Obtient les attributs personnalisés pour cet assembly, tels qu'ils sont spécifiés par le type. |
GetCustomAttributes(Boolean)
Obtient tous les attributs personnalisés pour cet assembly.
public:
virtual cli::array <System::Object ^> ^ GetCustomAttributes(bool inherit);
public virtual object[] GetCustomAttributes (bool inherit);
abstract member GetCustomAttributes : bool -> obj[]
override this.GetCustomAttributes : bool -> obj[]
Public Overridable Function GetCustomAttributes (inherit As Boolean) As Object()
Paramètres
Retours
- Object[]
Tableau qui contient les attributs personnalisés pour cet assembly.
Implémente
Remarques
Cette méthode implémente la ICustomAttributeProvider méthode d’interface correspondante. Par conséquent, le inherit
paramètre doit être spécifié même s’il est ignoré.
Un pseudo-attribut indique les bits des métadonnées de base qui doivent être définies lorsque l’attribut est présent. Contrairement à un attribut personnalisé qui étend les métadonnées pour un type et qui est enregistré avec le type, un pseudo-attribut modifie les métadonnées pour le type, puis est ignoré. Certains bits obtenus ne sont pas accessibles à l’aide des API de réflexion existantes.
Le tableau suivant récapitule les différents pseudo-attributs et les accesseurs pour les bits qui sont disponibles dans la réflexion.
Pseudo-Attribute | Bits de métadonnées | Accesseur de réflexion |
---|---|---|
DllImportAttribute | CorPInvokeMap Nom de la DLL |
Aucun accesseur pour PInvokeMap pour les attributs ordinaires de méthode/méthode globale.Aucun accesseur pour le nom de la DLL. |
GuidAttribute | Stocké en tant qu’attribut personnalisé réel. | Accessible en tant qu’attribut personnalisé réel. |
ComImportAttribute | CorTypeAttr.tdImport |
Type.Attributes.Import |
SerializableAttribute | CorTypeAttr.tdSerializable |
Type.Attributes.Serializable |
NonSerializedAttribute | CorFieldAttr.fdNotSerialized |
FieldInfo.Attributes.NotSerialized |
MethodImplAttribute | CorMethodImpl |
MethodInfo.GetMethodImplementationFlags() ConstructorInfo.GetMethodImplementationFlags() |
MarshalAsAttribute | Différents bits. | Aucun accesseur. |
PreserveSigAttribute | CorMethodImpl.miOLE |
MethodInfo.GetMethodImplementationFlags().OLE ConstructorInfo.GetMethodImplementationFlags().OLE |
InAttribute | CorParamAttr.pdIn |
ParameterInfo.Attributes.In |
OutAttribute | CorParamAttr.pdOut |
ParameterInfo.Attributes.Out |
StructLayoutAttribute | CorTypeAttr.tdLayoutSequential CorTypeAttr.tdExplicitLayout CorTypeAttr.tdAnsiClass CorTypeAttr.tdUnicodeClass CorTypeAttr.tdAutoClass Compression de classe. |
Type.Attributes.LayoutSequential Type.Attributes.ExplicitLayout Type.Attributes.AnsiClass Type.Attributes.UnicodeClass Type.Attributes.AutoClass Aucun accesseur. |
FieldOffsetAttribute | Décalage du champ. | Aucun accesseur. |
AssemblyLoadAttribute |
CorAssemblyFlags |
Aucun accesseur ou énumérateur. |
S’applique à
GetCustomAttributes(Type, Boolean)
Obtient les attributs personnalisés pour cet assembly, tels qu'ils sont spécifiés par le type.
public:
virtual cli::array <System::Object ^> ^ GetCustomAttributes(Type ^ attributeType, bool inherit);
public virtual object[] GetCustomAttributes (Type attributeType, bool inherit);
abstract member GetCustomAttributes : Type * bool -> obj[]
override this.GetCustomAttributes : Type * bool -> obj[]
Public Overridable Function GetCustomAttributes (attributeType As Type, inherit As Boolean) As Object()
Paramètres
- attributeType
- Type
Type pour lequel les attributs personnalisés doivent être retournés.
Retours
- Object[]
Tableau qui contient les attributs personnalisés pour cet assembly, tels qu'ils sont spécifiés par attributeType
.
Implémente
Exceptions
attributeType
a la valeur null
.
attributeType
n’est pas un type de runtime.
Remarques
Cette méthode implémente la ICustomAttributeProvider méthode d’interface correspondante. Par conséquent, le inherit
paramètre doit être spécifié même s’il est ignoré.
Un pseudo-attribut indique les bits des métadonnées de base qui doivent être définies lorsque l’attribut est présent. Contrairement à un attribut personnalisé qui étend les métadonnées pour un type et qui est enregistré avec le type, un pseudo-attribut modifie les métadonnées pour le type, puis est ignoré. Certains bits obtenus ne sont pas accessibles à l’aide des API de réflexion existantes.
Le tableau suivant récapitule les différents pseudo-attributs et les accesseurs pour les bits qui sont disponibles dans la réflexion.
Pseudo-Attribute | Bits de métadonnées | Accesseur de réflexion |
---|---|---|
DllImportAttribute | CorPInvokeMap Nom de la DLL |
Aucun accesseur pour PInvokeMap pour les attributs ordinaires de méthode/méthode globale.Aucun accesseur pour le nom de la DLL. |
GuidAttribute | Stocké en tant qu’attribut personnalisé réel. | Accessible en tant qu’attribut personnalisé réel. |
ComImportAttribute | CorTypeAttr.tdImport |
Type.Attributes.Import |
SerializableAttribute | CorTypeAttr.tdSerializable |
Type.Attributes.Serializable |
NonSerializedAttribute | CorFieldAttr.fdNotSerialized |
FieldInfo.Attributes.NotSerialized |
MethodImplAttribute | CorMethodImpl |
MethodInfo.GetMethodImplementationFlags() ConstructorInfo.GetMethodImplementationFlags() |
MarshalAsAttribute | Différents bits. | Aucun accesseur. |
PreserveSigAttribute | CorMethodImpl.miOLE |
MethodInfo.GetMethodImplementationFlags().OLE ConstructorInfo.GetMethodImplementationFlags().OLE |
InAttribute | CorParamAttr.pdIn |
ParameterInfo.Attributes.In |
OutAttribute | CorParamAttr.pdOut |
ParameterInfo.Attributes.Out |
StructLayoutAttribute | CorTypeAttr.tdLayoutSequential CorTypeAttr.tdExplicitLayout CorTypeAttr.tdAnsiClass CorTypeAttr.tdUnicodeClass CorTypeAttr.tdAutoClass Compression de classe. |
Type.Attributes.LayoutSequential Type.Attributes.ExplicitLayout Type.Attributes.AnsiClass Type.Attributes.UnicodeClass Type.Attributes.AutoClass Aucun accesseur. |
FieldOffsetAttribute | Décalage du champ. | Aucun accesseur. |
AssemblyLoadAttribute |
CorAssemblyFlags |
Aucun accesseur ou énumérateur. |