Compartilhar via


<Elemento Assembly> (.NET Native)

Aplica a política de reflexão de runtime a todos os tipos em um assembly especificado.

Syntax

<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 e elementos

As seções a seguir descrevem atributos, elementos filho e elementos pai.

Atributos

Atributo Tipo de atributo Descrição
Name Geral Atributo obrigatório. Especifica o nome simples de um assembly.
Activate Reflexão Atributo opcional. Controla o acesso de runtime a construtores para habilitar a ativação de instâncias.
Browse Reflexão Atributo opcional. Controla consultas para obter informações sobre os tipos no assembly ou para enumerá-los, mas não permite qualquer acesso dinâmico no tempo de execução.
Dynamic Reflexão Atributo opcional. Controla o acesso a todos os tipos de membro ao runtime, incluindo construtores, métodos, campos, propriedades e eventos, habilitando a programação dinâmica.
Serialize Serialização Atributo opcional. Controla o acesso ao runtime para construtores, campos e propriedades para habilitar a serialização e desserialização das instâncias por bibliotecas como o serializador Newtonsoft JSON.
DataContractSerializer Serialização Atributo opcional. Controla a política de serialização que usa a classe System.Runtime.Serialization.DataContractSerializer.
DataContractJsonSerializer Serialização Atributo opcional. Controla a política de serialização JSON que usa a classe System.Runtime.Serialization.Json.DataContractJsonSerializer.
XmlSerializer Serialização Atributo opcional. Controla a política de serialização XML que usa a classe System.Xml.Serialization.XmlSerializer.
MarshalObject Interoperabilidade Atributo opcional. Política de controles de marshaling de tipos de referência para o Windows Runtime e COM.
MarshalDelegate Interoperabilidade Atributo opcional. Controla a diretiva de marshaling de tipos delegados como ponteiros de função para código nativo.
MarshalStructure Interoperabilidade Atributo opcional. Controla a política de estruturas de marshaling para código nativo.

Atributo de nome

Valor Descrição
assembly_name O nome simples do assembly, sem a extensão de arquivo. Este atributo corresponde à propriedade AssemblyName.Name . Por exemplo, o nome de um assembly denominado Extensions.dll é "Extensions".

Você também pode especificar a cadeia de caracteres literal *Application* para aplicar a política a todos os assemblies no pacote de aplicativos, sejam os assemblies carregados ou não. *Application* nunca aplica-se à política para assemblies .NET Framework.

Todos os outros atributos

Valor Descrição
policy_setting A configuração a ser aplicada a este tipo de política para todos os tipos no assembly. Os valores possíveis são All, Auto, Excluded, Public, PublicAndInternal, Required Public, Required PublicAndInternal e Required All. Para obter mais informações, consulte Configurações da política da diretiva de runtime.

Elementos filho

Elemento Descrição
<Namespace> Aplica a política de reflexão de tempo de execução a todos os tipos em um namespace filho.
<Type> Aplica a política de reflexão a um tipo.
<TypeInstantiation> Aplica a política de reflexão a um tipo genérico construído.

Elementos pai

Elemento Descrição
<Aplicativo> Serve como um contêiner para os tipos amplos de aplicativos cujos metadados estão disponíveis para reflexão no tempo de execução. O <elemento Application> pode ter zero, um ou mais <Assembly> elementos.
<Biblioteca> Define o assembly que contém tipos e membros de tipo cujos metadados estão disponíveis para reflexão em tempo de execução. O <elemento Library> pode ter zero ou um <Assembly> elemento.

Comentários

O elemento <Assembly> define a política de runtime para todos os tipos em um assembly. Ele difere do <elemento Library> , que especifica uma biblioteca, mas depende de seus elementos filho para definir a política de reflexão de runtime. O elemento <Assembly> aplica-se a todos os tipos em um assembly, a menos que eles sejam substituídos por um elemento filho.

O exemplo a seguir mostra como você pode aplicar a política de runtime a todos os tipos em assemblies dentro do pacote do aplicativo atribuindo ao Name atributo um valor de "*Application*". O <Assembly> elemento deve ser um filho do <elemento Application> .

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

Os atributos Activate, Browse, Dynamic e Serialize são todos opcionais. No entanto, o elemento <Assembly> deve conter pelo menos um desses atributos.

Confira também