Compartir a través de


<Elemento Assembly (.NET Native)>

Aplica la directiva de reflexión en tiempo de ejecución a todos los tipos en un ensamblado especificado.

Sintaxis

<Assembly Name="assembly_name"
          Activate="policy_setting"
          Browse="policy_setting"
          Dynamic="policy_setting"
          Serialize="policy_setting"
          DataContractSerializer="policy_setting"
          DataContractJsonSerializer="policy_setting"
          XmlSerializer="policy_setting"
          MarshalObject="policy_setting"
          MarshalDelegate="policy_setting"
          MarshalStructure="policy_setting" />

Atributos y elementos

En las siguientes secciones se describen los atributos, los elementos secundarios y los elementos primarios.

Atributos

Attribute Tipo de atributo Descripción
Name General Atributo necesario. Especifica el nombre simple de un ensamblado.
Activate Reflexión Atributo opcional. Controla el acceso en tiempo de ejecución a los constructores para permitir la activación de instancias.
Browse Reflexión Atributo opcional. Controla la consulta para obtener información acerca de los tipos en el ensamblado o enumerar los tipos en el ensamblado, pero no permite el acceso dinámico en tiempo de ejecución.
Dynamic Reflexión Atributo opcional. Controla el acceso en tiempo de ejecución a todos los miembros de tipo (incluidos constructores, métodos, campos, propiedades y eventos) para permitir la programación dinámica.
Serialize Serialización Atributo opcional. Controla el acceso en tiempo de ejecución a constructores, campos y propiedades para permitir que bibliotecas como el serializador JSON Newtonsoft puedan serializar y deserializar instancias de tipo.
DataContractSerializer Serialización Atributo opcional. Controla la directiva de serialización que usa la clase System.Runtime.Serialization.DataContractSerializer.
DataContractJsonSerializer Serialización Atributo opcional. Controla la directiva de serialización JSON que usa la clase System.Runtime.Serialization.Json.DataContractJsonSerializer.
XmlSerializer Serialización Atributo opcional. Controla la directiva de serialización XML que usa la clase System.Xml.Serialization.XmlSerializer.
MarshalObject Interop Atributo opcional. Controla la directiva de serialización de tipos de referencia a Windows Runtime y COM.
MarshalDelegate Interop Atributo opcional. Controla la directiva de serialización de tipos de delegado como punteros de función a código nativo.
MarshalStructure Interop Atributo opcional. Controla la directiva para calcular referencias de estructuras a código nativo.

Name (atributo)

Valor Descripción
assembly_name Nombre simple del ensamblado sin la extensión de archivo. Este atributo corresponde a la propiedad AssemblyName.Name. Por ejemplo, el nombre de un ensamblado denominado Extensions.dll es "Extensions".

También puede especificar la cadena literal *Application* para aplicar la directiva a todos los ensamblados en el paquete de la aplicación, independientemente de si se han cargado o no. *Application* nunca aplica una directiva a ensamblados de .NET Framework.

Resto de atributos

Valor Descripción
policy_setting Configuración que se va a aplicar a este tipo de directiva para todos los tipos en el ensamblado. Los valores posibles son All, Auto, Excluded, Public, PublicAndInternal, Required Public, Required PublicAndInternal y Required All. Para obtener más información, vea Runtime Directive Policy Settings (Configuración de directiva de la directiva en tiempo de ejecución).

Elementos secundarios

Elemento Descripción
<Espacio de nombres> Aplica la directiva de reflexión a todos los tipos en un espacio de nombres secundario.
<Tipo> Aplica la directiva de reflexión a un tipo.
<TypeInstantiation> Aplica la directiva de reflexión a un tipo genérico construido.

Elementos primarios

Elemento Descripción
<Aplicación> Sirve de contenedor de los tipos y miembros de tipo de la aplicación cuyos metadatos están disponibles para la reflexión en tiempo de ejecución. El <elemento Application> puede tener cero, uno o varios <Assembly> elementos.
<Library> Define el ensamblado que contiene los tipos y miembros de tipo cuyos metadatos están disponibles para la reflexión en tiempo de ejecución. El <elemento Library> puede tener cero o un <Assembly> elemento.

Comentarios

El elemento <Assembly> define la directiva en tiempo de ejecución para todos los tipos en un ensamblado. Difiere del <elemento Library> , que especifica una biblioteca, pero depende de sus elementos secundarios para definir la directiva de reflexión en tiempo de ejecución. El elemento <Assembly> se aplica a todos los tipos en un ensamblado, a menos que un elemento secundario los haya invalidado.

En el ejemplo siguiente se muestra cómo aplicar la directiva en tiempo de ejecución a todos los tipos de ensamblados del paquete de la aplicación asignando el Name atributo un valor de "*Application*". El <Assembly> elemento debe ser un elemento secundario del <elemento Application> .

<Directives xmlns="http://schemas.microsoft.com/netfx/2013/01/metadata">
  <Application>
     <Assembly Name="*Application*" Dynamic="Required All" />
  </Application>
</Directives>

Los atributos Activate, Browse, Dynamic y Serialize son opcionales. Sin embargo, el elemento <Assembly> debe contener al menos uno de estos atributos.

Consulte también