asp.net中怎么限制重复提交?在线急等。。

来源:百度知道 编辑:UC知道 时间:2024/06/17 22:10:21
以前用asp的时候后台处理页都是在另外的页面,所以刷新前台不会有反应,但是在asp.net中,我的后台处理页面是在当前页的后台,所以每次当我刷新的时候都会重复提交,例如发送留言,添加用户等等,只要刷新页面就会不断的提交重复的留言,用户到数据库,请问怎么解决。。。急等。高手救命

让网页过期,或者不让网页被IE缓存
1.禁止客户端缓存要在<head>中加入类似如下内):
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
ASP.net 代码如下:
放在页面代码Page_Onload
HttpContext.Current.Response.Expires = 0;
Response.ExpiresAbsolute = DateTime.Now - 1;
Response.AddHeader("progma", "no-cache");
Response.AddHeader("cache-control", "private");
Response.CacheControl = "no-cache";

我有2种方法
现在不记得 做个记号晚上回去发给你

提交后做个记号,表示已经提交,然后再提交就报错

简单的笨方法,提交,判断是否成功,成功就重新访问自己的页面。
Response.Redirect("本页");

提交后就跳转到一个提交成功的页面不得了~

很简单,我是这样做的
如果重复提交,那么数据库里就有了2条相同的数据。你限制不能有2条相同数据就可以了,比如标题不能相同。