Compilerfehler CS1914
Das statische Feld 'Name' kann nicht in einem Objektinitialisierer zugewiesen werden.
Objektinitialisierer initialisieren definitionsgemäß Objekte oder Instanzen von Klassen. Sie können nicht zum Initialisieren eines static
-Felds eines Typs verwendet werden. Unabhängig davon, wie viele Instanzen einer Klasse erstellt werden, gibt es nur eine Kopie eines static
-Felds.
- Ändern Sie das Feld in ein Instanzenfeld des entsprechenden Typs, oder entfernen Sie den Versuch, es über den Objektinitialisierer zu initialisieren.
Der folgende Code generiert CS1914, da der Initialisierer versucht, das TestClass.Number
-Feld zu initialisieren, das static
ist:
// 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
}
}
Feedback zu .NET
.NET ist ein Open Source-Projekt. Wählen Sie einen Link aus, um Feedback zu geben: