是否可以在MVC中定义一个区域,该区域也将作为来自s#arp架构的AreaViewEngine的Controller

时间:2010-08-27 17:31:01

标签: asp.net-mvc s#arp-architecture

我想在我的MVC应用程序中执行此操作:

  • 本地主机/企业
  • 本地主机/企业/创建
  • 本地主机/企业/详情/ 1
  • 本地主机/企业/ 1 /出版物
  • 本地主机/企业/ 1 /出版物/创建
  • 本地主机/企业/ 1 /出版物/详情/ 1

有了这个,我可以读到我想为Id = 1的企业创建出版物。我这样做是正确的吗?

如果是的话,我需要在S#arp Architecture的AreaViewEngine的帮助下使用MVC中的Area。但我有一个问题。如果我将“企业”注册为某个区域,企业控制器将无法正确回答。 localhost / Enterprises / Create将不会被看到,因为他认为它是对区域的调用,而不是对Controller的调用。

有什么建议吗?或者更好的方法吗?

谢谢

亚历

2 个答案:

答案 0 :(得分:2)

您只需使用路由来处理您想要执行的操作。我建议阅读路由以及你可以用它做些什么。

在这种特殊情况下,一个区域可能会过度杀伤。区域的设计真正旨在将应用程序分解为更易于管理的块。有些人将区域视为子应用程序,有些人将其视为应用程序分区。我说这实际上取决于你想要做什么以及你的需求是什么。

答案 1 :(得分:2)

看看:http://stevehodgkiss.com/blog/2010/03/21/restful-routing-for-asp-net-mvc-2/

我认为你将能够用它来实现你想要的目标。