我正在尝试在选择时重定向gridview。但是,当我尝试重定向到的页面位于不同的文件夹中时,我遇到了重定向问题。
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
答案 0 :(得分:11)
Response.Redirect("~/staff/staff.aspx")
答案 1 :(得分:6)
主要是使用/
而不是\
。您不是重定向到服务器上的文件夹,而是重定向到网站上的路径(这意味着服务器上的文件夹只是一个实现细节)。
您可以使用相关链接执行所有表单。因此"staff/staff.aspx"
转到当前文件夹中名为staff的文件夹中名为staff.aspx的文件(假设您的基于文件夹和文件的系统)。 "../staff/staff.aspx"
上传一个文件夹,然后发送给员工,然后发送到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/
,这非常有用。这样,相同的代码可以双向工作。
答案 2 :(得分:3)
这应该可以解决问题
Response.Redirect("~/staff/staff.aspx");