假设我有一个类,它的属性是字典<string,bool>,使用对象初始化器我可以使用这种语法(我认为它看起来很干净):
new MyClass()
{
Table = { {"test",true},{"test",false} }
}
但是,在初始化程序之外我不能这样做:
this.Table = { {"test",true},{"test",false} };
为什么初始化器是一个特例?我冒昧地猜测它与 LINQ 要求、协方差或诸如此类的东西有关,但感觉有点不一致,不能在任何地方使用那种初始化程序......