asp.net中的问题刷新

时间:2011-03-23 15:58:10

标签: c# asp.net

我创建了Button。添加活动点击。在事件函数AddToDataBase中。

我按下Button,事件工作,运行功能 - 数据好添加到数据库。

更多我按F5事件wirk并且函数AddToDataBase开始工作。

这不正确。如何解决?

3 个答案:

答案 0 :(得分:1)

在完成“数据良好添加到数据库”后尝试重定向,否则F5将再次提交您的活动。

答案 1 :(得分:0)

F5使用上次用于显示页面的相同GET和POST参数查询服务器。因此,如果您的按钮没有将您重定向到另一个页面,那么执行F5会向服务器发送请求,就像您再次单击该按钮一样。

答案 2 :(得分:0)

默认情况下,刷新页面时,将再次注册PostBack事件,这将再次触发按钮点击事件。

一个简单的解决方案是在AddToDatabase函数完成后添加以下命令:

Response.Redirect(Request.Url.PathAndQuery)

这将导致页面重定向到自身,因此如果发生刷新,PostBack事件将不会注册按钮单击。

它不是最优雅的,但它会完成工作。如果页面上有更复杂的内容,您可能需要查看其他解决方案,例如通过AJAX或其他方式包装AddToDatabase函数。