2009-07-14 137 views
4

应该如何分离ASP.NET MVC站点中的控制器?例如,默认项目有一个HomeController和一个AccountController。网站的每个部分是否应该有一个控制器,还是其他的?分割ASP.NET MVC控制器

我正在学习如何使用MVC框架,以及任何帮助,将不胜感激。

回答

1

我认为这取决于你的网站将会有多大。为您的控制器提供逻辑名是最重要的部分,让您的源代码易于导航非常重要。

一般而言,如果您不确定,我认为最好从CRUD书中取出一片叶子,特别是如果您正在处理支持它的数据模型时。对于某个特定的模块(比如产品),您将有一个负责创建,读取,更新和删除(以及查看索引)的控制器。

如果你的网站比较少CRUDDY(比如Stack Overflow),那么把控制器分成逻辑区域(比如“PostController”,“SearchController”等等)可能更有用,但它确实取决于你的网站和它的架构。

对不起,我不能更有帮助,在大多数情况下,无论如何,最好是通过做。如果你是新人,采取你认为最好的方法是基于你所看到的建议和例子。一个好的思考.NET和ASP.NET MVC的是,稍后重构很容易。

0

这样做的传统方式是以与拆分视图相同的方式拆分控制器。例如:

/浏览/家有指数,注册和联系的观点,那么你就会有一个HomeController的

/浏览/产品具有展示和列表视图,那么你就会有一个ProductController的

最简单way视图文件夹中每个文件夹的1个控制器。

0

对于何时制造新的控制器,没有特定的规则。 如果你觉得它会控制网站的不同部分,你可以创建一个新的控制器。

基本上有很多控制器,可以将网站逻辑上划分为不同的部分。