我在以下路径中有一个 .aspx 页面:
Areas/Management/Views/Ticket/Report.aspx
我想在我的浏览器中将其路由到以下路径:
http://localhost/Reports/Tickets
我该怎么做?
我试试这个:
routes.MapRoute(
"Tickets", // Route name
"Areas/Management/Views/Ticket/Report.aspx", // Original URL
new { controller = "Reports", action = "Tickets" } // New URL
);
但是我遇到了 404
错误。
我做错了什么?
Obs:我把它放在 Default
路由之前。
最佳答案
如果您尝试在 MVC 项目中使用 Web 表单,那么我会将您的 .aspx 移出 View 文件夹,因为它不是真正的 View ,所以类似于 WebForms/Tickets/Report.aspx。
在 Web 表单中,您可以通过调用 MapPageRoute
方法来映射路线。
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapPageRoute("Tickets", "Reports/Tickets", "~/WebForms/Tickets/Report.aspx");
routes.MapRoute("Default", "{controller}/{action}/{id}", new { controller = "Home", action = "Index", id = UrlParameter.Optional });
您需要将其放在默认 MVC 路由之前。
关于c# - 如何在 asp.net mvc 3 项目中路由 .aspx 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10175200/