【发布时间】:2023-04-03 04:16:02
【问题描述】:
我可以像这样设置一个从根级 URL 映射的路由吗?
我使用的是 VS2010 内置的网络服务器。
尝试使用空白或单斜杠 URL 字符串设置路由不起作用:
routes.MapRoute(
"Default",
"/",
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
它会导致错误“路由 URL 不能以 '/' 或 '~' 字符开头并且不能包含 '?'特点。”。提前致谢!我的整个路线定义在这里:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"EditingTitles", // Route name
"{controller}/{action}/{startingLetter}", // URL with parameters
new { controller = "Admin", action = "Index", startingLetter = UrlParameter.Optional } // Parameter defaults
);
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
【问题讨论】:
-
向我们展示您的其他路线,我遇到了与上述类似的问题(以及您对 XSaint32 答案的注释),除非我指定了控制器/操作,否则我的默认路线导致 404,这是由于在我的路线中某处命名错误的路线
标签: asp.net-mvc routing