C# ASP.net重定向到调用页

C# ASP.net重定向到调用页,c#,asp.net,redirect,back,C#,Asp.net,Redirect,Back,我有一个页面,它调用另一个带有一些查询字符串参数的页面。单击按钮后,我想返回到该页面 我必须提到,我是在用户控件中编写代码的,我不知道第二个页面叫什么 浏览器中是否有类似后退按钮的功能?在客户端使用javascript的最简单方法 window.back(); 对于服务器端,您需要在页面加载中保存url引用: if(!Page.IsPostback) { ViewState["GoBackTo"] = Request.UrlReferrer; } 在按钮上单击“使用响应”。重定向: Re

我有一个页面,它调用另一个带有一些查询字符串参数的页面。单击按钮后,我想返回到该页面

我必须提到,我是在用户控件中编写代码的,我不知道第二个页面叫什么


浏览器中是否有类似后退按钮的功能?

在客户端使用javascript的最简单方法

window.back();
对于服务器端,您需要在页面加载中保存url引用:

if(!Page.IsPostback)
{
  ViewState["GoBackTo"] = Request.UrlReferrer;
}
在按钮上单击“使用响应”。重定向:

Response.Redirect( ViewState["GoBackTo"].ToString() );


编辑:请注意下面普姆金的评论

您可以使用Request.urlReferer,但不一定总是从客户端发送:

        Response.Redirect(Request.UrlReferrer.AbsoluteUri);
你可以看看

或者,如果以编程方式生成链接,则可以在url中包含returnUrl,例如
http://localhost/secondpage.aspx?returnurl=firstpage.aspx


然后,您可以在第二页中读取此querystring参数,并在工作完成后执行重定向返回。

将这行代码放在页面加载事件上

 Btn_Back.Attributes.Add("onClick", "javascript:history.back(); return false;");

URLreferer不是一直在工作,但是这是一个比robert更好的方法。不,如果他们直接进入页面,它不会总是工作。只需像
if(ViewState[“GoBackTo”]==null)
那样捕捉它,如果有null,只需重定向到默认登录页面,如
account.aspx
或类似页面。如果您不想使用forms authentications+1,这很好