.net如何解决在相同的时间内不允许其他人在其他地点登录帐号!。例如:我用一个帐号10点30分钟登录网站,另外一个人在其他地点在10点32分登录网站,使用同一帐号。如何让后面那个人登录不进去。

解决方案 »

  1.   

    单点登录可以在全局变量的变量存放帐号 如服务端的Cache 或者 Application变量 之类的,持久化到Xml文件或数据库也行http://s.yanghao.org/program/viewdetail.php?i=74585
      

  2.   

    这个简单:
    多两字段:登陆状态-最后登陆时间
    用户登陆时先判断登陆状态是否登陆中,如果是,再判断登陆时间是否时间段内即可。
    PS:操作数据库推荐 CYQ.Data 数据框架,用过爽歪歪!
      

  3.   

    这个啊,不让它登陆啊?这有点难吧,我曾经做个一个这样的思路的,就是,登陆后,生成随机数,然后,数据库和cookies同时记录数值,如果不同,就跳出来。如果你登陆了,你生成的和数据库保存的是一致,这时,有人登陆了,就不一样了,你就会跳出,这样,就知道,有人登陆了
      

  4.   

    真的这么设计,会非常变态。以QQ为例,我们知道,家庭网络的IP是会变动的,如果登录完了,正好IP变化了,那么这个人再也登录不了了。所以你看到,无论是QQ还是MSN,总是后面的登录踢掉前面的登录,而不是前面登录了,后面就不让登。这是一个常识问题,如同没有汽车设计者把车轮设计成方的或者三角的,并非技术上做不到这一点,而是这种设计是不合理的。你的问题典型就是不懂产品的问题。
      

  5.   

    另外多人这个概念值得商榷,你怎么判断多人?多IP?多会话?还是多机?比如刚才说的,客户的IP变化了,那他就不是他自己了?
    客户开了2个IE浏览器,后面的那个就不是他了?
    客户同时有一部电脑和一部iPad,那么两个设备就是2个人了?客户的电脑使用了多会话,比如Windows的多账户,那么同一台电脑的2个用户,是一个人么?
    客户使用了你的系统一半,把键盘鼠标交给旁边的一个人,还是他自己么?
    客户所在网络的网关有一个监听的黑客,他可以获得客户和服务器通讯的报文,他伪造sessionid,他和客户是一个人么?……所以表面上看你在问怎么做,实质上是看你怎么界定“同一个人”这个概念,如果这个概念都不清楚,讨论怎么做还有意义么?