重定向会避免双重发布吗?

2 c# asp.net post post-redirect-get

可能不是,但我想问.重定向会避免双重发布吗?我知道有更好的方法可以避免它,但大多数双重发布怎么办?从我的理解它当前页面没有加载和用户点击刷新,而不是多次点击发布的bc.我认为重定向信息非常小,当用户点击刷新时,它只会尝试加载新页面而不会重新发送POST数据.

它只是一个非常简单快速的解决方案,我只是想知道它是否高效?

Jef*_*nal 5

是的,重定向以避免双重发布是如此常见且非常有效,以至于该技术的名称为" Post-Redirect-Get".它还可以使您的ASP.NET代码更清晰,因为您的页面不需要同时处理获取和发布.不多于此:

if (!this.IsPostBack) {
    // Do one thing for gets
} else {
    // Do something else for posts
}
Run Code Online (Sandbox Code Playgroud)

唯一的缺点是它可能使状态和错误消息的显示复杂化.