如何为每个用户会话保留不同的购物车时间

本文关键字:购物车 时间 保留 会话 用户 | 更新日期: 2023-09-27 18:25:44

我们正在开发一个购物车应用程序。对于每一个用户会话,我都必须在用户将第一个产品添加到购物车后给他20分钟的时间来进行结账过程。如果用户添加了另一个产品,我必须重置时钟并从开始20分钟开始。如果用户在20分钟内没有做任何事情,我必须结束会话。如果用户进入结账流程,则将启动另一个结账流程时钟。要15分钟。但如果他取消了结账流程,回到商店,第一个时钟必须从原来的地方开始。。

希望我清楚。

我可以使用什么方法?我会使用线程、会话还是。。?

非常感谢。

如何为每个用户会话保留不同的购物车时间

您可能希望使用会话状态。每次用户做某事时,你都可以在会话中设置时间戳,例如添加项目等。在打开任何页面之前,你都会检查时间,看看

(DateTime.Now - Session[LastAccessTime]) > new TimeSpan(0, 20, 0)

如果它更大,则显示一条消息,说明时间已过期,否则继续。

在购物页面上,你可以检查20分钟,在结账页面上,检查15分钟。

也可以看看这个答案:使用定时器的会话超时

正如Shiroy所说,您肯定会为此使用会话,但我认为您可以简单地使用Session.Timeout属性,在进入网站的不同区域时适当设置它。