Response.Redirect 继续转到旧 URL
本文关键字:URL Redirect 继续 Response | 更新日期: 2023-09-27 18:30:46
我正在采用其他人编写的现有 ASP.net C# Web应用程序,我们必须更改主文件的位置。 它是一个地址库,当他们单击名称时,它会将他们带到个人资料页面。
配置文件页面位置未更改,但旧的 response.redirect 是使用虚拟路径编写的。当我将虚拟路径更改为绝对路径时,Web 应用程序不会确认更改并继续重定向到旧路径,从而导致 404 错误。
这是.aspx中的链接按钮代码
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" CommandName="viewProfile" CommandArgument="<%# ((GridViewRow) Container).RowIndex %>" runat="server"><%# (Eval("EmpName"))%> </asp:LinkButton>
</ItemTemplate>
这是 aspx 的块.cs
protected void gvFinder_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "viewProfile")
{
int index = Convert.ToInt32(e.CommandArgument);
Session["EmployeeId"] = gvFinder.DataKeys[index].Value.ToString();
string name = gvFinder.Rows[index].Cells[0].Text;
string y = gvFinder.DataSourceID;
Response.Redirect("Profile");
}
}
这是我将其更改为的内容,但没有导致更改。
protected void gvFinder_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "viewProfile")
{
int index = Convert.ToInt32(e.CommandArgument);
Session["EmployeeId"] = gvFinder.DataKeys[index].Value.ToString();
string name = gvFinder.Rows[index].Cells[0].Text;
string y = gvFinder.DataSourceID;
Response.Redirect("http://www.ourwebsite.com/Profile");
}
}
有没有人熟悉如何让它实际转到旧 URL?
有多个选项1. http://www.ourwebsite.com/Profile 不可用、离线或过期2.如果您有源代码,为什么不将profile.aspx放在项目根目录中,如果要保存旧文件,可以将其重命名为Porfileold.aspx在这种情况下,您无需更改URL只需重新部署即可正常工作