我如何使用;发布/重定向/获取“;a、 k.a.“;“发布后重定向”;使用asp.net

我如何使用;发布/重定向/获取“;a、 k.a.“;“发布后重定向”;使用asp.net,asp.net,post,post-redirect-get,redirect-after-post,Asp.net,Post,Post Redirect Get,Redirect After Post,在asp.net中的某些操作之后进行刷新似乎会使这些操作再次发生,即使该操作没有意义(请考虑双重删除)。处理这种情况的web方法是在发布后重定向,以获得页面的干净版本,该版本无需向web服务器重新发布操作即可刷新。如何使用ASP.NET来实现这一点我感觉有一个更深层次的问题我没有得到解决,但问题来了。在回发事件中: // the post handling logic, e.g. the click event code Response.Redirect(Request.RawUrl); 使

在asp.net中的某些操作之后进行刷新似乎会使这些操作再次发生,即使该操作没有意义(请考虑双重删除)。处理这种情况的web方法是在发布后重定向,以获得页面的干净版本,该版本无需向web服务器重新发布操作即可刷新。如何使用ASP.NET来实现这一点我感觉有一个更深层次的问题我没有得到解决,但问题来了。在回发事件中:

// the post handling logic, e.g. the click event code
Response.Redirect(Request.RawUrl);

使用Server.Transfer方法

Transfer方法还有第二个参数“preserveForm”。如果使用诸如Server.Transfer(“WebForm2.aspx”,True)之类的语句将其设置为True,则现有查询字符串和任何表单变量仍将可用于要传输到的页面


我使用的是.NET Framework 2.0,但我对适用于所有框架版本的答案感兴趣,那么如何防止双重删除或双重提交呢?/@BobbyShaftoe不会。您不能使用Server.Transfer,因为P-R-G要求向客户端发送重定向状态代码。该代码应为
Response.redirect(Request.RawUrl,false)以完成处理并避免应用程序终止会话等。