<Elemento Assembly> (.NET Native)

Applica i criteri di reflection di runtime a tutti i tipi in un determinato assembly.

Sintassi

<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" />

Attributi ed elementi

Nelle sezioni seguenti vengono descritti gli attributi, gli elementi figlio e gli elementi padre.

Attributi

Attributo Tipo di attributo Descrizione
Name Generali Attributo obbligatorio. Specifica il nome semplice di un assembly.
Activate Reflection Attributo facoltativo. Controlla l'accesso in fase di esecuzione ai costruttori per abilitare l'attivazione di istanze.
Browse Reflection Attributo facoltativo. Controlla le query per le informazioni o per l'enumerazione dei tipi nell'assembly, ma non abilita l'accesso dinamico al runtime.
Dynamic Reflection Attributo facoltativo. Controlla l'accesso in fase di esecuzione a tutti i membri dei tipi, inclusi costruttori, metodi, campi, proprietà ed eventi, per abilitare la programmazione dinamica.
Serialize Serializzazione Attributo facoltativo. Controlla l'accesso in fase di esecuzione a costruttori, campi e proprietà per abilitare la serializzazione e la deserializzazione delle istanze del tipo da parte di librerie quali il serializzatore JSON di Newtonsoft.
DataContractSerializer Serializzazione Attributo facoltativo. Controlla i criteri per la serializzazione che usano la classe System.Runtime.Serialization.DataContractSerializer.
DataContractJsonSerializer Serializzazione Attributo facoltativo. Controlla i criteri per la serializzazione JSON che usano la classe System.Runtime.Serialization.Json.DataContractJsonSerializer.
XmlSerializer Serializzazione Attributo facoltativo. Controlla i criteri per la serializzazione XML che usano la classe System.Xml.Serialization.XmlSerializer.
MarshalObject Interop Attributo facoltativo. Controlla i criteri per effettuare il marshalling dei tipi di riferimento a Windows Runtime e COM.
MarshalDelegate Interop Attributo facoltativo. Controlla i criteri per effettuare il marshalling dei tipi delegati come puntatori a funzioni al codice nativo.
MarshalStructure Interop Attributo facoltativo. Controlla i criteri per effettuare il marshalling delle strutture al codice nativo.

Name (attributo)

valore Descrizione
assembly_name Il nome semplice dell'assembly, senza estensione di file. Questo attributo corrisponde alla proprietà AssemblyName.Name. Ad esempio, il nome di un assembly denominato Extensions.dll è "Extensions".

È anche possibile specificare la stringa letterale *Application* per applicare i criteri a tutti gli assembly nel pacchetto dell'app, a prescindere se siano caricati o meno. *Application* non applica mai i criteri agli assembly di .NET Framework.

Tutti gli altri attributi

valore Descrizione
policy_setting L'impostazione da applicare a questo tipo di criteri per tutti i tipi nell'assembly. I valori consentiti sono All, Auto, Excluded, Public, PublicAndInternal, Required Public, Required PublicAndInternal e Required All. Per altre informazioni, vedere Runtime Directive Policy Settings (Impostazioni dei criteri delle direttive di runtime).

Elementi figlio

Elemento Descrizione
<Spazio dei nomi> Applica i criteri di reflection a tutti i tipi in uno spazio dei nomi figlio.
<Type> Applica i criteri di reflection a un tipo.
<TypeInstantiation> Applica i criteri di reflection a un tipo generico costruito.

Elementi padre

Elemento Descrizione
<Applicazione> Viene usato come contenitore per i tipi e i membri dei tipi a livello di applicazione i cui metadati sono disponibili per la reflection al runtime. L'elemento <Application> può contenere nessuno, uno o più <Assembly> elementi.
<Libreria> Definisce l'assembly che contiene i tipi e i membri dei tipi i cui metadati sono disponibili per la reflection al runtime. L'elemento <Library> può contenere nessuno o un <Assembly> elemento.

Osservazioni:

L'elemento <Assembly> definisce i criteri di runtime per tutti i tipi in un assembly. È diverso dall'elemento <Library> che specifica una libreria, ma dipende dagli elementi figlio per definire i criteri di reflection di runtime. L'elemento <Assembly> si applica a tutti i tipi in un assembly a meno che questi non siano sottoposti a override da un elemento figlio.

L'esempio seguente illustra come applicare i criteri di runtime a tutti i tipi presenti negli assembly all'interno del pacchetto di app assegnando Name un valore "*Application" all'attributo. L'elemento <Assembly> deve essere figlio dell'elemento <Application>.

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

Gli attributi Activate, Browse, Dynamic e Serialize sono tutti facoltativi. Tuttavia, l'elemento <Assembly> deve contenere almeno uno di questi attributi.

Vedi anche