Прочитать на английском

Поделиться через


Ошибка компилятора CS1914

Статическому полю "имя" не может быть присвоено значение в инициализаторе объекта

Инициализаторы объекта по определению инициализируют объекты или экземпляры классов. Они не могут использоваться для инициализации поля static типа. Независимо от того, сколько экземпляров класса создается, существует только одна копия поля static .

Исправление ошибки

  1. Измените поле для поля экземпляра в типе или удалите попытку инициализации его из инициализатора объекта.

Пример

В следующем коде возникает ошибка CS1914, поскольку инициализатор пытается инициализировать поле TestClass.Number , которое является 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  
  
    }  
}