避免在上次执行完成之前调用方法

时间:2014-12-18 17:40:46

标签: c# asp.net

我使用Web服务将数据发布到外部数据库。 Web服务通常需要大约2-6秒才能完成执行。 在同一方法中,我也将记录插入到我自己的数据库中。

现在,为了避免插入重复项,我在使用该方法之前检查,如果该记录已存在于我自己的数据库中。

但是,发生的事情是web服务有时会挂起几分钟,然后插入记录,当用户刷新浏览器,或者此时重新启动方法时,我会在之后获得重复记录。

有人可以帮我解决一下如何避免重复数据库因为刷新/重新加载/重新点击这个方法会被调用两次吗?

是否可以使这个方法对每个用户都是唯一的,所以我知道它仍在执行/等待响应?

1 个答案:

答案 0 :(得分:0)

我会直接在数据库而不是源中解决问题。您可以轻松地为INSERT语句设置数据库触发器(取决于您的DBMS,如MySQL,MSSQL)。

数据库触发器的一个很好的指南是: http://www.sqlteam.com/article/an-introduction-to-triggers-part-i