假设我想将/ js / *中的所有请求转发到JavaScript
控制器Index
方法。换句话说,这些路由都应该调用JavaScriptController.Index()
:
/js/root/index.css
/js/user/account/index.css
/js/master.css
我的Global.asax.cs
文件中的路由定义是什么?
这似乎不起作用:
routes.MapRoute("JavaScript", "js/{*path}",
new { controller = "JavaScriptController", action = "Index" });
在调试模式期间永远不会使用以下函数调用断点:
public class JavaScriptController : Controller
{
[HttpGet]
public void Index(string path)
{
var browser = HttpContext.Request.Browser;
System.Diagnostics.Debugger.Break();
}
}
我错过了什么吗?
答案 0 :(得分:3)
您应该在路由默认值中具有控制器短名称,例如:
routes.MapRoute(
"JavaScript",
"js/{*path}",
new { controller = "javascript", action = "Index" }
);
这样可行。