ASP.NET MVC 设置默认控制器操作

ASP.NET MVC Set default controller action

请指导我为我的控制器设置默认操作,这样只要控制器中没有指示操作,应用程序就会路由到给定控制器上的索引操作。例如,如果有人导航到 dashboard/ 而没有指示操作,应用程序会自动运行 dashboard 控制器的 index 操作。

以下显示了我的尝试,但仍然无法正常工作。

public class RouteConfig
{
  public static void RegisterRoutes(RouteCollection routes)
  {
      routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
      routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Account", action = "Login", id = UrlParameter.Optional }
    );
    routes.MapRoute(
      name: "Regular",
      url: "{controller}/{action}/{id}",
      defaults: new { controller = "Home", action = "Login", id = UrlParameter.Optional }
    );
    routes.MapRoute(
      name: "ControllerDefault",
      url: "{controller}",
      defaults: new {  action = "Index"}
    );
  }
}

我将不胜感激任何让它正常工作的指南,

您必须在同一条 url 上选择不同的路线。 你只需要使用默认路由。

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

如果这是您的默认控制器,您可以将 "Home" 更改为 "Dashboard"。