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
.
Это поведение указано где угодно?