Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ASP.NET:web表单按钮单击问题_C#_Asp.net_Webforms - Fatal编程技术网

C# ASP.NET:web表单按钮单击问题

C# ASP.NET:web表单按钮单击问题,c#,asp.net,webforms,C#,Asp.net,Webforms,我在c#中使用ASP.NET实现Web表单,我有一个带有少量文本框和提交按钮的页面,当按下提交按钮时,文本框中的数据将插入数据库,页面将被保留,不需要重定向 但是,在提交数据后会出现问题,如果F5/刷新页面而不单击提交按钮,数据将一次又一次插入 如何避免在首次提交后发生此类问题 高级谢谢。放置响应。保存逻辑完成后重定向到同一页面。发生这种情况是因为浏览器在F5上重复上一个请求。在您的情况下,这是要保存的POST请求。响应后。重定向将获得最后一个请求,您的问题将得到解决。不幸的是,您无法阻止类似的

我在c#中使用ASP.NET实现Web表单,我有一个带有少量文本框和提交按钮的页面,当按下提交按钮时,文本框中的数据将插入数据库,页面将被保留,不需要重定向

但是,在提交数据后会出现问题,如果F5/刷新页面而不单击提交按钮,数据将一次又一次插入

如何避免在首次提交后发生此类问题


高级谢谢。

放置响应。保存逻辑完成后重定向到同一页面。发生这种情况是因为浏览器在F5上重复上一个请求。在您的情况下,这是要保存的POST请求。响应后。重定向将获得最后一个请求,您的问题将得到解决。

不幸的是,您无法阻止类似的事情发生,因为在您按“刷新”后浏览器会再次执行相同的代码,因此您在那里无能为力,但可以使用Response.Redirect再次转到同一页面

此外,您还可以检查数据库中是否存在重复记录,以便在该记录存在时不再保存该记录


希望我有帮助

您是否尝试将其放入
if(!Page.IsPostBack){}
块中?重复可能的重复您应该始终检查记录是否存在,如果存在,请不要将该记录添加到数据库中在插入之前有记录检查,但是提交后手动刷新页面后,记录检查似乎不起作用。这看起来会起作用,是响应。重定向到同一页面是最佳做法?我不能说这是最佳做法,这取决于具体情况。