Assembly.GetCustomAttributes Método

Definición

Obtiene los atributos personalizados para este ensamblado.

Sobrecargas

GetCustomAttributes(Boolean)

Obtiene todos los atributos personalizados para este ensamblado.

GetCustomAttributes(Type, Boolean)

Obtiene los atributos personalizados para este ensamblado tal y como lo especifica el tipo.

GetCustomAttributes(Boolean)

Source:
Assembly.cs
Source:
Assembly.cs
Source:
Assembly.cs

Obtiene todos los atributos personalizados para este ensamblado.

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

Parámetros

inherit
Boolean

Este argumento se omite para objetos de tipo Assembly.

Devoluciones

Object[]

Matriz que contiene los atributos personalizados de este ensamblado.

Implementaciones

Comentarios

Este método implementa el método de interfaz correspondiente ICustomAttributeProvider . Por lo tanto, se debe especificar el inherit parámetro aunque se omita.

Un pseudo-atributo indica bits de los metadatos principales que se deben establecer cuando el atributo está presente. A diferencia de un atributo personalizado que extiende los metadatos de un tipo y se guarda junto con el tipo , un pseudoatributo modifica los metadatos del tipo y, a continuación, se descarta. No se puede acceder a algunos de los bits resultantes mediante las API de reflexión existentes.

En la tabla siguiente se resumen los distintos pseudo atributos y los descriptores de acceso de los bits que están disponibles en la reflexión.

Pseudo-Attribute Bits de metadatos Descriptor de acceso de reflexión
DllImportAttribute CorPInvokeMap

Nombre de DLL
No hay descriptor de acceso para los PInvokeMap atributos de método o método global normales.

No hay ningún descriptor de acceso para el nombre del archivo DLL.
GuidAttribute Almacenado como un atributo personalizado real. Se accede como un atributo personalizado real.
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 Varios bits. No hay descriptor de acceso.
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

Empaquetado de clases.
Type.Attributes.LayoutSequential

Type.Attributes.ExplicitLayout

Type.Attributes.AnsiClass

Type.Attributes.UnicodeClass

Type.Attributes.AutoClass

No hay descriptor de acceso.
FieldOffsetAttribute Desplazamiento de campo. No hay descriptor de acceso.
AssemblyLoadAttribute CorAssemblyFlags Ningún descriptor de acceso o enumerador.

Se aplica a

GetCustomAttributes(Type, Boolean)

Source:
Assembly.cs
Source:
Assembly.cs
Source:
Assembly.cs

Obtiene los atributos personalizados para este ensamblado tal y como lo especifica el tipo.

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

Parámetros

attributeType
Type

Tipo cuyos atributos personalizados se van a devolver.

inherit
Boolean

Este argumento se omite para objetos de tipo Assembly.

Devoluciones

Object[]

Matriz que contiene los atributos personalizados de este ensamblado tal y como lo especifica attributeType.

Implementaciones

Excepciones

attributeType es null.

attributeType no es un tipo en tiempo de ejecución.

Comentarios

Este método implementa el método de interfaz correspondiente ICustomAttributeProvider . Por lo tanto, se debe especificar el inherit parámetro aunque se omita.

Un pseudo-atributo indica bits de los metadatos principales que se deben establecer cuando el atributo está presente. A diferencia de un atributo personalizado que extiende los metadatos de un tipo y se guarda junto con el tipo , un pseudoatributo modifica los metadatos del tipo y, a continuación, se descarta. No se puede acceder a algunos de los bits resultantes mediante las API de reflexión existentes.

En la tabla siguiente se resumen los distintos pseudo atributos y los descriptores de acceso de los bits que están disponibles en la reflexión.

Pseudo-Attribute Bits de metadatos Descriptor de acceso de reflexión
DllImportAttribute CorPInvokeMap

Nombre de DLL
No hay descriptor de acceso para los PInvokeMap atributos de método o método global normales.

No hay ningún descriptor de acceso para el nombre del archivo DLL.
GuidAttribute Almacenado como un atributo personalizado real. Se accede como un atributo personalizado real.
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 Varios bits. No hay descriptor de acceso.
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

Empaquetado de clases.
Type.Attributes.LayoutSequential

Type.Attributes.ExplicitLayout

Type.Attributes.AnsiClass

Type.Attributes.UnicodeClass

Type.Attributes.AutoClass

No hay descriptor de acceso.
FieldOffsetAttribute Desplazamiento de campo. No hay descriptor de acceso.
AssemblyLoadAttribute CorAssemblyFlags Ningún descriptor de acceso o enumerador.

Se aplica a