Assembly.GetCustomAttributes Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
Devoluciones
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.
Devoluciones
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. |