0

我正在使用由其他人编写的现有 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");
            }
        }

有没有人熟悉如何让它真正转到旧 URL?

4

1 回答 1

0

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

于 2013-09-11T08:18:04.443 回答