我应该在哪里创建实例? 哪种方法更好,为什么?
1)在构造函数中?
public class UserController : Controller
{
private UnitOfWork unitofwork;
public UserController(){
unitofwork = new UnitofWork();
}
public ActionResult DoStuff(){
...
2)作为私有(private)类(class)成员?
public class UserController : Controller
{
private UnitOfWork unitofwork = new UnitofWork();
public ActionResult DoStuff(){
...
最佳答案
确实,这是个人喜好。有些人倾向于在构造函数外部进行初始化,这仅仅是因为其他人很少有机会在不初始化的情况下加入并添加新成员,因为在他们前面有一个示例。
通常,如果对象的初始化需要任何逻辑或需要参数,则我更喜欢在构造函数中进行。不过,无论您选择什么,都要确保保持一致。
编辑:注意,在构造函数中初始化还允许您调用非静态方法和属性