【发布时间】:2013-03-21 18:27:23
【问题描述】:
我刚刚了解了对象初始化器,想知道何时使用它们的最佳实践是什么。
这是我读到的关于他们的内容:http://msdn.microsoft.com/en-us/library/vstudio/bb384062.aspx 它清楚地表明它们对于创建匿名类型是必要的,但我想知道在所有其他情况下我是否应该尝试更喜欢它们而不是普通构造函数。
【问题讨论】:
-
这可能有点主观。有一个不可变的类型?需要封装状态的对象?声明可注入依赖项的对象?更喜欢构造函数。有一个简单(但可变)的 DTO?随意使用初始化语法。使用对您要完成的工作有意义的工具。
-
即使在一个简单的 DTO 中,对于类的任何必需,我仍然会使用构造函数参数。
标签: c# constructor object-initializer