Compartilhar via


Visão Geral Sobre Atributos

Se você usou o C++, você provavelmente está familiarizado com declarações que contêm palavras-chave, como Public e private , que fornecem informações adicionais sobre membros de classe.Essas palavras-chave definem adiante o comportamento de membros de classe descrevendo sua acessibilidade para outras classes.Como compiladores são explicitamente projetados para reconhecer palavras-chave predefinidas, tradicionalmente você não tem a oportunidade para criar suas próprias.Entretanto, o Common Language Runtime permite que você adicione declarações descritivas semelhantes a palavras-chave, chamadas atributos, para fazer anotações de elementos da programação, como tipos, campos, métodos e propriedades.

Quando você compila o código para o tempo de execução, ele é convertido em Microsoft Intermediate Language (MSIL) e colocado dentro um arquivo executável portátil (PE) junto com metadados gerados pelo compilador.Atributos permitem que você coloque informações descritivas adicionais em metadados que podem ser extraídos usando serviços de reflexão em tempo de execução.O compilador cria atributos ao declarar as instâncias das classes especiais que derivem de System.Attribute.

O .NET Framework usa atributos para uma variedade de razões e para tratar um número de questões.Atributos descrevem como serializar os dados, especifique as características que são usadas para aplicar a segurança, e limitar otimizações pelo compilador just-in-time (JIT) para que o código permaneça fácil de depurar.Atributos também podem registrar o nome de um arquivo ou o autor do código, ou controlar a visibilidade de controles e membros durante o desenvolvimento de formulários.

Você pode usar atributos para descrever o código de praticamente qualquer forma concebível e para afetar o comportamento em tempo de execução de novas maneiras criativas.Atributos permitem que você adicione seus próprios elementos descritivos para C#, Visual C++, Microsoft Visual Basic 2005, ou qualquer outra linguagem que atinge o tempo de execução, sem reescrever o compilador.

Consulte também

Referência

System.Attribute

Outros recursos

Estendendo metadados usando atributos