分离 ASP.NET MVC 控制器

4

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

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

3个回答

1

我认为这取决于你的网站规模大小。控制器的逻辑命名是最重要的部分,使源代码易于导航也非常重要。

通常情况下,如果你不确定,我认为从CRUD书中借鉴一些经验是个好主意,特别是当你处理支持它的数据模型时。对于一个特定的模块(比如产品),你需要一个负责创建、读取、更新和删除的控制器(以及用于查看的索引)。

如果你的网站不像Stack Overflow那样CRUDDY,那么将控制器分成逻辑区域(例如“PostController”、“SearchController”等)可能更有用,但这确实取决于你的网站和其架构。

很抱歉我不能提供更多帮助,在大多数情况下,通过实践学习是最好的方法。如果你是新手,根据你所见到的建议和示例采取你认为最好的方法。.NET和ASP.NET MVC的一个好处是稍后进行重构相当容易。


0
传统的方法是将控制器拆分成与视图相同的方式。例如:
/Views/Home有Index,register 和 contact视图,那么你会有一个HomeController /Views/Product 有Show和List视图,那么你会有一个ProductController 最简单的方法是在 Views 文件夹中为每个文件夹设置一个控制器。

0

没有具体的规则来确定何时创建新控制器。 如果您觉得它将控制网站的不同部分,那么可以创建一个新的控制器。

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接