我创建了Button。添加活动点击。在事件函数AddToDataBase中。
我按下Button,事件工作,运行功能 - 数据好添加到数据库。
更多我按F5事件wirk并且函数AddToDataBase开始工作。
这不正确。如何解决?
答案 0 :(得分:1)
在完成“数据良好添加到数据库”后尝试重定向,否则F5将再次提交您的活动。
答案 1 :(得分:0)
F5使用上次用于显示页面的相同GET和POST参数查询服务器。因此,如果您的按钮没有将您重定向到另一个页面,那么执行F5会向服务器发送请求,就像您再次单击该按钮一样。
答案 2 :(得分:0)
默认情况下,刷新页面时,将再次注册PostBack事件,这将再次触发按钮点击事件。
一个简单的解决方案是在AddToDatabase函数完成后添加以下命令:
Response.Redirect(Request.Url.PathAndQuery)
这将导致页面重定向到自身,因此如果发生刷新,PostBack事件将不会注册按钮单击。
它不是最优雅的,但它会完成工作。如果页面上有更复杂的内容,您可能需要查看其他解决方案,例如通过AJAX或其他方式包装AddToDatabase函数。