ASP.NET视图路由默认值

时间:2016-09-08 00:12:48

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

我的默认路由遵循{controller}/{id}/{action}而非标准{controller}/{action}/{id}

现在我需要设置默认设置,如果没有提供id,默认为控制器中的Index操作

如果提供了ID并且未提供任何操作,则默认为“详细信息”操作

如果同时提供了Id和Action,则路由到相应的操作。

如何设置此路由?

目前:

routes.MapRoute(
       name: "Default",
       url: "{controller}/{id}/{action}",
       defaults: new { controller = "projects", action = "Index" })

1 个答案:

答案 0 :(得分:0)

通常的做法是像你指定的那样设置路由;即按顺序创建以下路线:

  • {controller}/
  • {controller}/{id}/
  • {controller}/{id}/{action}

显然,对于各种路线,不再有可选参数。像往常一样应用默认值。 :)