0

谷歌搜索了一下后,我发现了一些关于如何使用 ASP.NET 获得在线用户的提示。但我正在使用我自己的课程作为会员资格。

我查到的资料是:

  1. 用户登录时将用户 sessionId 记录到数据库
  2. 当他们的会话超时时将他们注销

您对此有何建议?

4

2 回答 2

1

我找到了这篇很棒的文章

希望能帮助某人

于 2009-01-17T23:44:19.750 回答
0

我们在工作中使用这种方法,以便当用户在单独但并发的会话中将数据上传到 Web 服务时,我们可以捕获 90% 发生超时的情况,并在当场警告用户。

我们没有抓住每一个案例,因为:

  • global.asax 中的会话超时事件处理程序在到期发生时不可靠地调用 (IIRC)
  • 同时,用户可能已经关闭了他们的浏览器窗口。

我知道的两种常见方法是:

  • 任何用户操作都会导致更新用户表中的 LastActionTime。使用此值 + 20 分钟(或任何您的会话超时值)可以很好地指示谁已登录
  • 每隔几秒更新一次的小型 AJAX 面板(与上一个选项相关联)。
于 2009-01-17T22:31:17.183 回答