Compiler Error CS0592

Das "Attribut"-Attribut ist für diesen Deklarationstyp nicht gültig.Es ist nur für "Typ"-Deklarationen gültig.

Beim Definieren eines Attributs geben Sie mit dem AttributeTargets-Wert an, auf welche Konstrukte dieses angewendet werden kann. Im folgenden Beispiel kann das MyAttribute-Attribut nur auf Schnittstellen angewendet werden, da mit dem AttributeUsage-Attribut AttributeTargets.Iterface angegeben wird. Der Fehler wird generiert, da das Attribut auf eine Klasse (Klasse A) angewendet wird.

Beispiel

Im folgenden Beispiel wird CS0592 generiert:

// CS0592.cs  
using System;  

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

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

Siehe auch

Attribute