Erreur du compilateur CS1914
Impossible d’assigner le champ Static 'nom' dans un initialiseur d’objet
Par définition, les initialiseurs d’objets initialisent des objets, ou instances, de classes. Ils ne doivent pas être utilisés pour initialiser un champ static
de type. Quel que soit le nombre d’instances d’une classe qui sont créés, il n’existe qu’une seule copie d’un champ static
.
- Remplacez le champ par un champ d’instance du type ou supprimez son initialisation de l’initialiseur d’objet.
Le code suivant génère l’erreur CS1914, car l’initialiseur essaie d’initialiser le champ TestClass.Number
, qui est de type static
:
// cs1914.cs
using System.Linq;
public class TestClass
{
public string Message { get; set; }
public static int Number { get; set; }
}
class Test
{
static void Main()
{
TestClass b = new TestClass() { Message = "Hello", Number = "555-1212" }; // CS1914
}
}
Commentaires sur .NET
.NET est un projet open source. Sélectionnez un lien pour fournir des commentaires :