CS0592 de erro do compilador

Mensagem de erro

Atributo 'attribute' inválido neste tipo de declaração.Ele é válido em declarações 'type' apenas.

Um atributo foi aplicado a uma declaração para o qual ele não foi desenvolvido.

Exemplo

O exemplo a seguir gera CS0592:

// CS0592.cs
using System;

[AttributeUsage(AttributeTargets.Interface)]
public class MyAttribute : Attribute 
{
}

[MyAttribute]
public class A  // CS0592, MyAttribute is not valid for a class
{
    public static void Main()
    {
    }
}