C# · Essencial · Português · Técnico
atributo
Metadado declarado entre colchetes sobre tipos, métodos ou parâmetros, como [Obsolete] ou [HttpGet], lido pelo compilador, por reflexão ou por ferramentas.
Onde usar
Aparece em todo projeto ASP.NET e EF: [ApiController], [Required], [Fact]. Atributos próprios são classes que herdam de Attribute e normalmente são lidos por reflexão ou por source generators.
Em código
class Api {
[Obsolete("Use Novo()")]
public void Antigo() { }
public void Novo() { }
}
// new Api().Antigo(); // aviso CS0618Exemplos
Marque o método antigo com o atributo Obsolete.
Esse atributo só funciona porque o framework o lê por reflexão.
Cuidado
O atributo sozinho não faz nada: alguém, seja o framework ou o seu código, precisa ler e agir sobre ele.
Sinônimos
attribute, anotação