Response.Redirect继续转到旧URL

时间:2013-09-10 16:58:15

标签: c# asp.net response.redirect

我正在使用其他人编写的现有ASP.net C#webapp,我们必须更改主文件的位置。它是一个地址库,当他们点击名称时,会将他们带到个人资料页面。

配置文件页面位置未更改,但旧的response.redirect是使用虚拟路径编写的。 当我将虚拟路径更改为绝对路径时,webapp不会确认更改并继续重定向到旧路径,从而导致404错误。

这是.aspx

中的LinkBut​​ton代码
<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");
            }
        }

是否有人熟悉如何将其实际转到旧网址?

1 个答案:

答案 0 :(得分:0)

有多种选择 1. http://www.ourwebsite.com/Profile无法使用,离线或已过期 2.如果您有源为什么不将profile.aspx放在项目根目录中,如果要保存旧文件,可以将其重命名为porfileold.aspx,在这种情况下,您不需要更改URL只需重新部署,它将正常工作