Erreur du compilateur CS0836
Impossible d’utiliser un type anonyme dans une expression constante.
Les seuls éléments autorisés dans une expression constante sont les constantes nommées, les littéraux et les expressions mathématiques qui combinent des expressions constantes.
- Faites du type anonyme un type nommé.
L’exemple suivant illustre une façon de générer l’erreur CS0836 :
C#
// 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;
}
}
Collaborer avec nous sur GitHub
La source de ce contenu se trouve sur GitHub, où vous pouvez également créer et examiner les problèmes et les demandes de tirage. Pour plus d’informations, consultez notre guide du contributeur.
Commentaires sur .NET
.NET est un projet open source. Sélectionnez un lien pour fournir des commentaires :