404 MapPageRoute()在文件夹中路由aspx页面时出错
本文关键字:aspx 出错 路由 MapPageRoute 文件夹 | 更新日期: 2023-09-27 17:59:00
尝试在webforms中路由,得到404。我已经使用System.Web.Routing;
设置了我的global.asax.cs文件,如下所示
protected void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
private void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute("ProfilePage",
"Profile",
"~/Manager/Profile.aspx");
}
profile.aspx位于管理器文件夹中。不知道为什么它不起作用。如果有人能给我一些建议,我将不胜感激
我期望url localhost:60008/Manager/Profile/
加载Profile.aspx页面。
第二个参数指定URL。尝试:
routes.MapPageRoute("ProfilePage",
"Manager/Profile",
"~/Manager/Profile.aspx");
你第一次就对了。这里是一个有效的路由
routes.MapPageRoute("", "YourPage", "~/Your/full/url.aspx", true);
第一段可以为空,第二段是你要使用的,第三段是你页面的url,最后一段[可选]是检查文件是否存在。
我相信错误的地方在于你如何使用它,对于一个超链接,你会说
NavigateUrl="~/YourPage"
在html锚点中
href="~/YourPage" runat="server"
在浏览器地址栏中,它将显示如下http://YourDomain.com/YourPage/
这就是我的工作方式。就我个人而言,必须把文件夹放在那里会破坏使用路由的目的吗?