控制器或模型:谁应该在MVC中实现业务方法?

时间:2010-12-11 19:21:04

标签: asp.net-mvc

我从这里读到:

http://www.dotnetjohn.com/articles.aspx?articleid=287

  

Controller表示应用程序的业务逻辑。 Model是维护实体状态的组件。

但是,如果我读MVC原始论文,我认为它不是一回事: http://heim.ifi.uio.no/~trygver/1979/mvc-2/1979-12-MVC.pdf

据我所知,控制器就像交通警察一样,模型因为它代表知识应该实现业务方法。

你的看法是什么?

2 个答案:

答案 0 :(得分:8)

恕我直言,这是应该实现控制器使用的业务方法的模型。对我来说,模型是一组业务对象和服务方法,它们表示对这些对象的操作。 MVC只是一种模式。例如,如果明天你决定改变模式并使用其他东西,那么继续,没问题,但你不应该改变你的商业模式,它们是所有事物的基础。

答案 1 :(得分:3)

在我工作的MVC应用程序中,业务逻辑封装在一个域程序集中 - 该程序集在许多应用程序中共享。该域由控制器编排,我使用哑“ViewModel”在控制器和每个视图之间传递数据。