Compartilhar via


Atributos de nível de assembly interpretados pelo compilador C#

A maioria dos atributos se aplica a elementos de linguagem específicos, como classes ou métodos. No entanto, alguns atributos são globais. Eles se aplicam a um assembly ou módulo inteiro. Por exemplo, use o AssemblyVersionAttribute atributo para inserir informações de versão em um assembly, desta forma:

[assembly: AssemblyVersion("1.0.0.0")]

Os atributos globais aparecem no código-fonte depois de qualquer diretiva using de nível superior e antes de qualquer declaração de namespace, de módulo ou de tipo. Você pode incluir atributos globais em vários arquivos de origem, mas deve compilar os arquivos em uma única passagem de compilação. Em projetos do .NET Framework, o Visual Studio adiciona atributos globais ao arquivo AssemblyInfo.cs. Esses atributos não são adicionados a projetos do .NET Core.

A linguagem C# faz referência a documentos da versão mais recentemente lançada da linguagem C#. Ele também contém a documentação inicial para recursos em visualizações públicas para a próxima versão do idioma.

A documentação identifica qualquer recurso introduzido pela primeira vez nas três últimas versões do idioma ou nas versões prévias públicas atuais.

Dica

Para descobrir quando um recurso foi introduzido pela primeira vez em C#, consulte o artigo sobre o histórico de versão da linguagem C#.

Os atributos de assembly fornecem informações sobre um assembly. Eles se enquadram nas seguintes categorias:

  • Atributos de identidade do assembly
  • Atributos informativos
  • Atributos de manifesto do assembly

Atributos de identidade do assembly

Três atributos (com um nome forte, se aplicável) determinam a identidade de um assembly: nome, versão e cultura. Esses atributos formam o nome completo do assembly e são necessários ao fazer referência a ele no código. Você pode definir a versão e a cultura de um assembly usando atributos. No entanto, você define o valor do nome pelo compilador, o IDE do Visual Studio na caixa de diálogo Informações do Assembly ou o Vinculador de Assembly (Al.exe) ao criar o assembly. O nome do assembly é baseado no manifesto do assembly. O atributo AssemblyFlagsAttribute especifica se várias cópias do assembly podem coexistir.

A tabela a seguir mostra os atributos de identidade.

Atributo Finalidade
AssemblyVersionAttribute Especifica a versão de um assembly.
AssemblyCultureAttribute Especifica a qual cultura o assembly dá suporte.
AssemblyFlagsAttribute Especifica uma combinação bit a bit dos sinalizadores para um assembly, descrevendo as opções do compilador JIT (just-in-time), se o assembly é ou não redirecionável e se ele tem uma chave pública completa ou indexada.

Atributos informativos

Use atributos informativos para fornecer mais informações da empresa ou do produto para um assembly. A tabela a seguir mostra os atributos informativos definidos no namespace System.Reflection.

Atributo Finalidade
AssemblyProductAttribute Especifica um nome de produto para um manifesto do assembly.
AssemblyTrademarkAttribute Especifica uma marca para um manifesto do assembly.
AssemblyInformationalVersionAttribute Especifica uma versão informativa para um manifesto do assembly.
AssemblyCompanyAttribute Especifica um nome de empresa para um manifesto do assembly.
AssemblyCopyrightAttribute Define um atributo personalizado que especifica os direitos autorais para um manifesto do assembly.
AssemblyFileVersionAttribute Define um número de versão específico para o recurso de versão do arquivo Win32.
CLSCompliantAttribute Indica se o assembly está em conformidade com a CLS (Common Language Specification).

Atributos de manifesto do assembly

Use atributos de manifesto do assembly para fornecer informações no manifesto do assembly. Os atributos incluem título, descrição, alias padrão e configuração. A tabela a seguir mostra os atributos de manifesto do assembly definidos no namespace System.Reflection.

Atributo Finalidade
AssemblyTitleAttribute Especifica um título de assembly para um manifesto do assembly.
AssemblyDescriptionAttribute Especifica uma descrição do assembly para um manifesto do assembly.
AssemblyConfigurationAttribute Especifica uma configuração de assembly (como varejo ou depuração) para um manifesto do assembly.
AssemblyDefaultAliasAttribute Define um alias padrão amigável para um manifesto do assembly.