我在我的项目中使用url路由来处理webform。它的工作正常,但我有一个问题。我的项目结构如下所示。
我在Index.aspx页面中有一个登录页面。输入用户名和密码后,它将重定向到Home.aspx。这是我的路由类
public static void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute(
"User",
"Users/{id}",
"~/Modules/UserMgmt/Users.aspx");
routes.MapPageRoute(
"Leave",
"LeaveApply/{id}",
"~/Modules/LeaveMgmt/LeaveApply.aspx");
routes.MapPageRoute(
"Index","Index","~/Index.aspx");
}
我的锚标签如下所示
<a href="../../Users/18">Users</a>
当我第一次登录时,它将正确进入Home.aspx,如下所示。
如果我使用此锚标记再次重定向页面,它将显示404错误并且无法获取父路径,页面如下所示
如果我重写锚标签,如下所示
<a href="../Users/18">Users</a>
它会起作用但会在第一时间起作用。我是如何解决这个问题的。请你帮助我好吗。
答案 0 :(得分:0)
锚标记可以使用相对于网站根目录的路径:
<a href="/URLRouting/Users/18">Users</a>
无论当前页面的路径是什么,都会指向http://localhost/URLRouting/Users/18
。