ASP.net重定向到调用页面

ali*_*ari 7 c# asp.net redirect back

我有一个页面调用另一个页面与一些查询字符串参数.我想在点击按钮后返回该页面.

我必须提到我在用户控件中编写该代码,而我不知道哪个页面称为第二页.

浏览器中是否有类似Back按钮的内容?

ibr*_*ram 12

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

window.back();
Run Code Online (Sandbox Code Playgroud)

对于服务器端,您需要在page_load中保存url referer:

if(!Page.IsPostback)
{
  ViewState["GoBackTo"] = Request.UrlReferrer;
}
Run Code Online (Sandbox Code Playgroud)

并在按钮上单击使用Response.Redirect:

Response.Redirect( ViewState["GoBackTo"].ToString() );
Run Code Online (Sandbox Code Playgroud)

编辑:请注意下面的ppumkin评论!

  • 不,如果他们直接到页面,它不会总是工作.就像`if(ViewState ["GoBackTo"] == null)`并且如果有null只是重定向到像`account.aspx`或类似的默认登录页面一样.如果您不想使用表单身份验证+1,这很好 (2认同)

Ben*_*ter 3

您可以查看跨页面发布

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

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