设置一个用户状态在sql里,用来判断
放Session里,并通过web.config配置储存在哪里。
sql太伤效率了,session和缓存都可以
还是添加字段比较好点。
建议在DB的用户表中添加一个字段,用于表示用户是否登录了,在登陆和注销时,更新这个字段。
1、来个字段表明用户是否已经登录
2、要注意区分用户在一个机器上面的两次登陆和在两台机器、甚至在两个地方的两次登录
我想问下,什么叫“同时登陆多次?”能描述清楚一些吗?
这个问题并不是很好处理,尽管有很多方案,但是很难保证判断的登录状态是正确的,比如说,用户关闭了浏览器,这时用户其实已经退出了,但是session依然存在,可能会导致用户短时间内无法登录。
Tony Qu 说的正是这个问题的根源所在,其实最难判定的问题时如何限定用户退出系统?
在Web中通常这是很难判定的,不管是利用session cache都很难达到用户只要关闭浏览器就判定用户已经退出登录。
不过在winform程序中这个应该不是问题,完全可以使用cache来实现,用户登录后cache一个用户标识。