因最近时间空点,写点个人心得了~,我们经常在程序中要实现显示当前有多少用户在线,以及在线用户的操作状态的功能,看了园子里朋友都有一些非常好的思路,这里我也提供一种很简单的方法:
1,用户登陆后,在每一次加载新的页面时判断权限(这是常规操作) 的同时,把用户状态写入一张OnlineUser表里,如果发现没有这个用户,就添加进OnlineUser表
2,在查询当前在线用户时,查询OnlineUser表即可。
3,用户退出程序时,加删除OnlineUser表中对应用户ID的记录。
4,用户非正常退出程序时,用DELETE FROM OnlineUser WHERE (DATEDIFF(ss, LastActTime, GETDATE()) > " + GlobalVar.Timeouts * 60 + ")的记录
BasePage中刷新在线用户操作状态的代码如下:
 1        }
判断权限函数中部分涉及在线用户的代码:
实现在线用户列表的简单方法if (Session["UserID"== null)

其中GlobalValTimeouts 为自定义超时时间,GlobalVar.DBName为数据库,Query.ProcessSql是用听棠.Net的SPL持久层。

大家如有不同建议,请提出啊,我下一步想法是用AJAX来实现在线用户列出来。

相关文章:

  • 2022-03-03
  • 2021-08-17
  • 2022-12-23
  • 2021-09-11
  • 2021-04-03
  • 2021-05-06
  • 2022-02-16
  • 2021-12-25
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-01-23
  • 2021-07-10
  • 2022-12-23
  • 2022-01-28
  • 2022-12-23
相关资源
相似解决方案