可以使用ASP.NET MVC制作“无控制器”的URL吗?

时间:2013-02-01 14:49:40

标签: asp.net-mvc url routing controller asp.net-mvc-routing

我正在使用ASP.NET MVC 4,.NET 4.5。除了为每个“动作”创建单独的控制器之外,还有“无控制器”的URL吗?

我的意思是,让家庭控制器充满动作。网址如:

  • site.com/Home/About
  • site.com/Home/Contact

成为

  • site.com/About
  • site.com/Contact

但仍使用家庭控制器。

1 个答案:

答案 0 :(得分:7)

您可以定义不包含控制器名称的路由,如下所示:

routes.MapRoute(
    "About",                                       // Route name
    "About/",                                      // URL with parameters
    new { controller = "Home", action = "About" }  // Parameter defaults
);

routes.MapRoute(
    "Contact",                                       // Route name
    "Contact/",                                      // URL with parameters
    new { controller = "Home", action = "Contact" }  // Parameter defaults
);