1

我创建了一个购物车(C#),它专门与用户会话相关联并存储在其中,这里没有问题。

每当用户将商品放入购物车时,我在产品数据库“reserved”中有一个属性,它加了一个,并且“instock”也减了一个。这有助于我跟踪库存大小和产品可用性。

但是如果用户没有完成订单,特别是当浏览器关闭时购物车满了,我需要清理产品数据库,这会将项目从“保留”移回“库存”。

由于我无法检测到 browserclose,这让我非常恼火,我怎样才能通过以干净和适当的方式维护产品数据库来解决这个问题?

关于这个架构问题的任何想法,还是我错过了一些“最佳实践”?

问候芬恩。

4

1 回答 1

1

对于那种东西,我会根据时间构建一个 sql 作业。

我会给用户 X 分钟来完成购买。如果未完成,则 sql 作业将删除该未完成的寄存器。

可以使用 sql Agent 轻松创建作业任务

Sql 工作

于 2013-04-30T08:45:06.807 回答