嵌套文件夹中的自定义ASP.NET MVC路由

时间:2009-05-12 13:53:31

标签: asp.net-mvc-routing

我想在我的MVC应用程序中使用子文件夹,因此当前路由不会削减它。

我有一个文件夹结构,例如

Views/Accounts/ClientBalances/MyReport.aspx

我想要一个http://myapp/Accounts/ClientBalances/MyReport之类的网址。你如何通过映射路线实现这一目标?我有一个bash,但我对他们不是很精明。

我认为这样做
 routes.MapRoute( _
        "Accounts/ClientBalances", _
        "Accounts/ClientBalances/{controller}/{action}/{id}", _
        New With {.controller = "Home", .action = "Index", .id = ""} _
    )
我虽然没有运气。有什么想法吗?

2 个答案:

答案 0 :(得分:3)

看一下ASP.NET MVC 2的 areas ;它们看起来与你想要实现的非常相似。您可以观看一段3分钟的快速视频,了解here

如果您不能(或不想)使用它们,请检查this answer有关嵌套视图文件夹的信息。总结:

  

您可以像这样返回相应的视图(来自操作方法):

return View("~/Views/controllername/modulename/actionname.ascx", [optional model]);

答案 1 :(得分:1)

视图的位置与路线无关。 您的观点应该在Views / [ControllerName]