在不添加Controller的情况下将节添加到URL

时间:2014-02-11 17:13:43

标签: asp.net-mvc-4

我有一个MVC应用程序,其中包含一些用于管理办公室详细信息的视图。通过localhost / MyApp / MyView1可以很好地查看视图,但我希望URL也有一个OfficeMgr部分。例如:localhost / MyApp / OfficeMgr / MyView1。

我不想拥有名为OfficeMgr的控制器。我希望URL有一个额外的部分。

如何将OfficeMgr部分添加到URL?

1 个答案:

答案 0 :(得分:0)

您可以为路线指定任何前缀属性:

文件App_Start\RouteConfig.cs负责应用程序中的路由配置。您可以添加或更改默认路由以提供aditional部分,例如:

 routes.MapRoute(
            name: "Default",
            url: "{area}/{controller}/{action}/{id}",
            defaults: new { area = "OfficeMgr", controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

然后您的网址将如下所示:http://myserver/OfficeMgr/Home/Index

你应该看看这里,了解更多Asp.net MVC路线信息:

如果您需要在定义的区域中拆分应用程序,则应使用MVC区域:

  1. Walkthrough: Organizing an ASP.NET MVC Application using Areas
  2. Using areas in ASP.NET MVC to organize a project