我正在为我的客户开发购物车应用程序,并且我正在尝试找到一种策略,以确保在购买过程中不会发生碰撞。
例如,如果库存中剩余五个项目,并且两个客户碰巧同时进行购买;库存应该是剩下的三个项目,而不是四个。在购买之前我似乎必须知道,目前的库存是什么。此外,我需要一种方法来判断是否有人抓住了最后一项,即使他们尚未购买。
我应该使用哪些策略/模式来确保满足这些条件?我正在使用SQL Server开发.net mvc应用程序。
啊并发。您有多种需要考虑的事项:
您的更新必须:
有多种方法可以做到这一点,但上面应该可以正常工作。您可以通过begin transaction在proc中通过新的transactionscope对象或服务器端启动代码中的事务。