MVC 中是否可以有多个路由 ASP.NET?



我想问一下,RouteConfig类中是否有可能有多个路由。我的逻辑如下,我想要实现什么。我已经actionLink("Dashboard", "Account".....)了,并希望拥有一个独特的页面,在加载页面时不会与现有页面冲突。请帮助我有办法。

namespace ContentManagementSystem  
{  
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 = "Home", action = "Index", id = UrlParameter.Optional } // I already have this working fine  
defaults: new { controller = "Dashbaord", action = "_Index", id = UrlParameter.Optional  // I want to have separate, but unique route for this controller for actionResult  
);  
}  
}  
}

是的,您可以拥有更多路线:

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

如上面的代码所示,学生路由的 URL 模式为students/{id},它指定任何以domainName/students开头的 URL 都必须由StudentController处理。

请注意,我们尚未在 URL 模式中指定 {action},因为我们希望每个以 student 开头的 URL 都应始终使用StudentController的索引操作。我们已经指定了默认控制器和操作来处理从domainname/students开始的任何 URL 请求。

您可以在此处阅读更多内容

将其添加到默认路由的顶部:

namespace ContentManagementSystem  
{  
public class RouteConfig  
{  
public static void RegisterRoutes(RouteCollection routes)  
{  
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");  
routes.MapRoute("other_route", "other_route/",
defaults: new { controller = "OtherController", action = "OtherAction" });
routes.MapRoute(  
name: "Default",  
url: "{controller}/{action}/{id}",  
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } // I already have this working fine  
defaults: new { controller = "Dashbaord", action = "_Index", id = UrlParameter.Optional  // I want to have seperate, but unique route for this controller for actionResult  
);  

}  
}  
}

最新更新