【发布时间】:2013-03-07 05:49:22
【问题描述】:
ASP .Net 自定义路由不起作用。
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
//default route
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Account", action = "LogOn", id = UrlParameter.Optional } // Parameter defaults
);
//custom route
routes.MapRoute(
"Admin",
"Admin/{addressID}",// controller name with parameter value only(exclude parameter name)
new { controller = "Admin", action = "address" }
new { addressID = @"\d+" }
);
}
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
}
public ActionResult address(int addressID = 0)
{
//code and redirection
}
如果可能,我想在这里隐藏 url 中的所有内容......就像我想尽可能隐藏动作名称和参数名称和值...... 建议我这样做的可能方法
就像我想要这样的网址(优先考虑)
1.http://localhost:abcd/Admin
或者
2.http://localhost:abcd/Admin/地址
或者
3.http://localhost:abcd/Admin/1
或者
4.http://localhost:abcd/Admin/address/1
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-3 asp.net-mvc-routing global-asax