重定向到ASP.Net中的当前页面

Fab*_*ano 49 c# asp.net redirect

如何使用Server.Transfer()当前显示的同一页面执行重定向?

我希望在提交后获得A格式.

我可以使用哪些其他/更好的方法来实现相同的目标?

epi*_*tka 113

为什么Server.TransferResponse.Redirect(Request.RawUrl)会得到你所需要的.

  • @Daniel:这不是一次浪费的往返旅行.通常,您不希望用户的浏览器页面堆栈中的最后一个请求是HTTP POST的结果.用户通常会刷新并重复该操作.转移不能解决这个问题,但重定向确实如此. (13认同)
  • @Daniel:没想到Post-Redirect-Get模式?如果没有,这里有一些信息:http://en.wikipedia.org/wiki/Post/Redirect/Get (7认同)

ker*_*vin 17

http://en.wikipedia.org/wiki/Post/Redirect/Get

在ASP.Net中实现此模式的最常用方法是使用Response.Redirect(Request.RawUrl)

考虑重定向和转移之间差异.转移真的不是告诉浏览器转发到一个清晰的表单,它只是返回一个清除的表单.这可能是也可能不是你想要的.

Response.Redirect()不会浪费往返.如果您发布到由Server.Transfer()清除表单的脚本并重新加载,则由于上一个操作是HTTP POST,因此大多数浏览器都会要求您重新发布.这可能会导致您的用户无意中重复某些操作,例如.下一个必须在以后废除的第二个订单.