我正在尝试在选择时重定向网格视图。但是,当我尝试重定向到的页面位于不同的文件夹中时,我会陷入重定向困境。
gridview 位于名为 HR 的文件夹中。我试图将其重定向到名为 Staff (Staff\Staff) 的文件夹中名为 Staff 的文件。如何重定向到不同的文件夹?
If e.CommandName = "Select" Then
'Add to session variable; translate the index of clicked to Primary Key
Session.Add("DetailsKey", GridView1.DataKeys(e.CommandArgument).Value.ToString)
Response.Redirect("staff\staff.aspx")
End If
Response.Redirect("~/staff/staff.aspx")
最主要的是使用
/
而不是\
。您没有重定向到服务器上的文件夹,而是重定向到网站上的路径(事实上,这意味着服务器上的文件夹只是一个实现细节)。
您可以使用相关链接完成所有表格。因此
"staff/staff.aspx"
转到当前文件夹中名为 Staff 的文件夹中名为 Staff.aspx 的文件(假设您的系统基于文件夹和文件)。 "../staff/staff.aspx"
转到文件夹,然后转到 Staff,然后转到 Staff.aspx。 "../../staff/staff.aspx"
首先上升两位。 "/staff/staff.aspx"
转到(http://mysite.com/staff/staff.aspx
等)上域的根。
除了所有这些之外,
"~/staff/staff.aspx"
会转到应用程序的根目录,然后转到该应用程序的根目录,然后转到 Staff.aspx。如果您在站点上工作,这将非常有用,因为该项目位于 http://localhost/currentProject/staff/staff.aspx
,但部署到 http://localhost/currentProject/
,因为站点位于 http://mysite.com/staff/staff.aspx
。这样,相同的代码可以双向工作。http://mysite.com/