Compilerfehler CS0836
Aktualisiert: November 2007
Fehlermeldung
In einem konstanten Ausdruck kann kein anonymer Typ verwendet werden.
Cannot use anonymous type in a constant expression.
In konstanten Ausdrücken sind nur benannte Konstanten, Literale und mathematische Ausdrücke, die konstante Ausdrücke kombinieren, erlaubt.
So beheben Sie diesen Fehler
- Wandeln Sie den anonymen Typ in einen benannten Typ um.
Beispiel
Das folgende Beispiel zeigt eine Möglichkeit, den Fehler CS0836 hervorzurufen:
// cs0836.cs
using System;
[AttributeUsage(AttributeTargets.Class, AllowMultiple = true, Inherited = false)]
public class A : Attribute
{
public A(object obj)
{
}
}
[A(new { })] // CS0836
public class B
{
}
public class Test
{
public static int Main()
{
return 0;
}
}