编译器错误 CS1914
更新:2007 年 11 月
错误消息
无法在对象初始值设定项中为静态字段“name”赋值
根据定义,对象初始值设定项用于对类的对象或实例进行初始化。它们不能用于对类型的 static 字段进行初始化。不管为一个类创建了多少个实例,该类的 static 字段都只有一个副本。
更正此错误
- 将字段更改为该类型的实例字段,或者不要尝试通过对象初始值设定项对该字段进行初始化。
示例
下面的代码生成 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
}
}