Compilerfehler CS0182

Aktualisiert: November 2007

Fehlermeldung

Ein Attributargument muss ein constant-, typeof- oder Arrayerstellungsausdruck eines Attributparametertyps sein.
An attribute argument must be a constant expression, typeof expression or array creation expression of an attribute parameter type

Bestimmte Einschränkungen legen fest, welche Arten von Argumenten mit Attributen verwendet werden können. Beachten Sie, dass zusätzlich zu den in der Fehlermeldung angegebenen Einschränkungen folgende Typen NICHT als Attributargumente zulässig sind:

Weitere Informationen finden Sie unter Globale Attribute (C#-Programmierhandbuch).

Beispiel

Im folgenden Beispiel wird CS0182 generiert:

// CS0182.cs
public class MyClass
{
    static string s = "Test";

    [System.Diagnostics.ConditionalAttribute(s)]   // CS0182
    // try the following line instead
    // [System.Diagnostics.ConditionalAttribute("Test")]
    void NonConstantArgumentToConditional()
    {
    }

    public static void Main()
    {
    }
}