设计MVC控制器

时间:2013-10-23 14:21:43

标签: asp.net-mvc-4 asp.net-mvc-controller

我的问题是关于设计ASP.NET MVC站点的过程,特别是关于确定我的站点应该具有哪些控制器类和操作方法。

到目前为止,这是我对ASP.NET MVC网站设计过程的理解:

  1. 首先,我应该使用Balsamiq之类的模拟工具来创建 模拟,所以我知道我的网站应该如何。这给了我看法。
  2. 第二个(或同时),我为我的域名对象建模。
  3. 鉴于视图和模型,我如何继续执行控制器类及其操作方法?控制器可以调用不同的视图,那么我的“保理”标准是什么?

    所以,我的问题是:鉴于视图和模型,我如何决定要使用哪些控制器以及每种控制器应包含哪些操作方法?

1 个答案:

答案 0 :(得分:2)

Imho,一个控制器应该反映一个特定的功能区域,处理一组彼此相关的功能。例如,您可以拥有一个专用于用户管理的控制器,您可以在其中创建和编辑用户,管理用户权限,用户配置文件,与用户相关的任何内容,另一个用于产品管理的控制器,根据用户输入显示可用产品,管理股票,供应商等...

由于控制器太多,你最终会重定向整天,控制器太少,维护起来很麻烦。

当然,当我说“这个控制器管理那组功能”时,我并没有说“把你所有的业务逻辑放在这里”。控制器的职责是调用正确的业务方法并将此数据传递到正确的视图。