CS0836 de erro do compilador
Mensagem de erro
Não pode usar o tipo anônimo em uma expressão de constante.
As únicas coisas permitidas em uma expressão de constante são chamadas de constantes, literais e expressões matemáticas combinam expressões constantes.
Para corrigir este erro
- Verifique o tipo anônimo um tipo nomeado.
Exemplo
O exemplo a seguir mostra uma maneira de gerar 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;
}
}