7

我刚刚开始使用 Ninject 进行依赖注入 (DI),并且正在通过我的控制器工作,希望将它们与我的模型进一步分离。

目前,在我的控制器内部,我正在创建某个给定模型的实例,例如:

var activitiesModel = new ActivitiesModel();

对于我以这种方式实例化的每个模型,我是否应该为它们提取一个接口,然后使用 DI 将这些东西联系在一起?

我目前正在执行此操作的一个示例是在我的 ActivitiesController 中:

IActivitiesModel _activitiesModel;

        public ActivitiesController(IActivitiesModel activitiesModel)
        {
            _activitiesModel = activitiesModel;
        }

这在我的 global.asax 中捆绑在一起:

Bind<IActivitiesModel>().To<ActivitiesModel>();

这是正确的方法吗?我应该为在控制器内部实例化的每个模型创建一个新接口吗?

为正确方向的任何帮助和轻推欢呼:-)

4

1 回答 1

5

这取决于这些模型在做什么。如果它们拥有数据访问和操作方法,那么它们应该被抽象出来,以削弱控制器和数据访问逻辑之间的耦合,并简化分离测试。如果它们只是 POCO 和/或数据传输对象,那么您不需要抽象它们。

于 2010-05-28T11:36:58.237 回答