2012-03-08 57 views
0

我使用VS2010,C#开发我的ASP.NET web应用,我的用户可以用自己的用户名/密码登录,然后他们可以查看网站,我想限制用户用户不能同时使用一个用户名登录,即当用户使用他的用户名登录时,他的用户名不能再登录,直到我们注销为止,我为每个用户在登录时创建一个会话(session [“userid”= user_id_obtained_from_database),当用户登录时,我将检查所有活动会话,如果没有活动会话[“userid”],用户登录时我将只允许我的用户登录关闭浏览器后的ASP.NET会话状态

我在注销时删除所有用户会话,但是当用户突然关闭他的浏览器页面时会发生什么?在这种情况下,我如何销毁用户会话ID,以便他可以再次登录?用户会话会保持打开状态,直到会话过期?所以如果用户关闭浏览器页面(而不是注销),他不能再次登录,直到他的会话在服务器上到期为止?

请帮我 感谢

回答

3

您可以触发对身体onbeforeunload事件AJAX调用到注册页面的退出。如果您在没有进一步的页面请求的情况下获得其中一个,那么该用户已离开您的网站。

+0

感谢朋友,我应该在哪里举办这个活动?在每个页面或global.asax上?有没有更多的样本描述它? – 2012-03-08 09:21:38

+0

您需要将代码在HTML中调用AJAX:''。你应该让AJAX调用一个'ashx'处理器来处理通过的会话信息。 – cjk 2012-03-08 11:01:09

相关问题