如何使Response.Redirect在整个环境中保持一致?

时间:2016-06-30 17:03:01

标签: asp.net

当我在我的视觉工作室中运行时,这条线路工作正常。

Response.Redirect("/MyFolder/MyPage.aspx?param=n")

但是,它在测试服务器中以stange方式运行。出错的原因是与我的visual studio相比,测试服务器中的结构不同。服务器中的解决方案位于另一个文件夹中。

OuterFolder/MyFolder/MyPage.aspx?param=n

所以服务器期望类似:mydomain.com/OuterFolder/MyFolder/MyPage.aspx?param=n

但发送的请求如下:mydomain.com/MyFolder/MyPage.aspx?param=n

这就是为什么我得到 404 的原因。

我认为无论解决方案在文件夹中的深度如何,都必须有一种方法来考虑路径。

2 个答案:

答案 0 :(得分:2)

您是否尝试过从应用程序根解析它?

Response.Redirect("~/MyFolder/MyPage.aspx?param=n")

答案 1 :(得分:0)

我将假设您已将 OuterFolder 设置为默认网站(?)下的应用程序/虚拟目录。

在这种情况下你应该试试这个:

Response.Redirect("~/MyFolder/MyPage.aspx?param=n")