Resharper刚刚向我建议了以下重构:
// Constructor initializes InitializedProperty but
// the UninitializedSubproperty is uninitialized.
var myInstance = new MyClass();
myInstance.InitializedProperty.UninitializedSubproperty = new MyOtherClass();
// becomes
var myInstance = new MyClass
{
InitializedProperty = { UninitializedSubproperty = new MyOtherClass() }
};
我以前从未见过这种对象初始化方式。特别是,我不知道如何
InitializedProperty = { UninitializedSubproperty = new MyOtherClass() }
有没有任何意义- 它没有将任何内容“分配”给InitializedProperty
。
这种行为是否在任何地方有规定?