Przeczytaj w języku angielskim

Udostępnij za pośrednictwem


Błąd kompilatora CS0836

Nie można użyć typu anonimowego w wyrażeniu stałym.

Jedynymi elementami dozwolonymi w wyrażeniu stałym są nazwy stałych, literałów i wyrażeń matematycznych łączących wyrażenia stałe.

Aby poprawić ten błąd

  1. Ustaw typ anonimowy na nazwany typ.

Przykład

Poniższy przykład przedstawia jeden ze sposobów generowania CS0836:

// 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;  
    }  
}