ASP.NET MVC最佳实践

时间:2009-07-18 02:07:45

标签: c# asp.net asp.net-mvc design-patterns

我来自世界的WPF,我习惯使用MVVM模式。我正在尝试学习MVC,并且在尝试理解我的边界在MVC中的位置时遇到了一些困难。这是我的情景:

我有3个对象,Parent,Child和GrandChild。这些是自定义对象,而不是使用MVC内置的模型。我对验证的东西有很好的处理。我对如何获取和填充对象有很好的处理。但是,我正在努力寻找有关如何处理控制器的最佳实践。我的控制员应该负责什么?例如,我应该有一个理解如何CRUD Parent,Child和GrandChild的控制器吗?或者那些应该分开?如果他们应该分开,如果我在看父母的时候,我想看一个儿童名单,我应该怎么做呢。

2 个答案:

答案 0 :(得分:3)

控制器仅用于控制请求 - 响应的。因此,在您的示例中,控制器永远不应该知道如何对它们进行CRUD。 CRUD逻辑应该包装在模型的Repository类中。

看看官方的书呆子晚餐示例,我个人最喜欢这个part

答案 1 :(得分:0)

书呆子晚餐应用程序是一个干净利落的例子。我同意将CRUD推送到存储库,一般情况下,仅将控制器用于控制流程。

然而,根据我对ASP.NET MVC的经验(对或错),控制器在切换到视图之前最终会重新排列数据,反之亦然,当接受对象模型作为数据来自表格。但同样,它只是在视图需要和模型需要之间进行转换。