我尝试使用路由系统将aspx中的旧页面版本重定向到我的控制器。
样品:
old Urlpage : ~/mypage.aspx?extraparam=123
new UrlPage : ~/HomeMyaction?extraparam=123 (or /Home/MyAction/123)
我试试这个:
routes.MapRoute(
name: "MyPage",
url: "mypage.aspx",
defaults: new { controller = "Home", action = "MyAction" },
namespaces: new string[] { "MyApp.Controllers" });
routes.MapRoute(
name: "MyPage",
url: "{namepage}.aspx",
defaults: new { controller = "Home", action = "MyAction" },
namespaces: new string[] { "MyApp.Controllers" });
但每次尝试我的网站都会返回错误404,因为他尝试访问“mypage.aspx”,但它们不再存在,我无法更改旧的访问权限。
我尝试忽略“mypage.aspx”,如.axd
routes.IgnoreRoute("mypage.aspx/{*pathInfo}");
但我总是404 BadRequest'未找到资源'
答案 0 :(得分:0)
关闭VisualStudio并重建我的整个解决方案后,我的路线运行正常。
我不知道为什么......
我用这个:
routes.MapRoute(
name: "MyPage",
url: "mypage.aspx",
defaults: new { controller = "Home", action = "MyAction" },
namespaces: new string[] { "MyApp.Controllers" });