Ошибка компилятора CS0198
Обновлен: Ноябрь 2007
Сообщение об ошибке
Полям статического, предназначенного только для чтения поля 'name' не могут быть присвоены значения (кроме как в статическом конструкторе или инициализаторе переменной)
Fields of static readonly field 'name' cannot be assigned to (except in a static constructor or a variable initializer)
С переменной с модификатором readonly модификатор static должен использоваться так же, как с конструктором, в котором она будет инициализироваться. Дополнительные сведения см. в разделе Статические конструкторы (руководство по программированию в C#).
Следующий пример проводит к генерированию ошибки CS0198:
// CS0198.cs
class MyClass
{
public static readonly int TestInt = 6;
MyClass()
{
TestInt = 11; // CS0198, constructor is not static and readonly field is
}
public static void Main()
{
}
}