知识大全 Asp.net中防止用户多次登录的方法[1]
Posted 事件
篇首语:人心隔肚皮,看人看行为。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Asp.net中防止用户多次登录的方法[1]相关的知识,希望对你有一定的参考价值。
Asp.net中防止用户多次登录的方法[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在Web开发时 有的系统要求同一个用户在同一时间只能登录一次 也就是如果一个用户已经登录了 在退出之前如果再次登录的话需要报错
常见的处理方法是 在用户登录时 判断此用户是否已经在Application中存在 如果存在就报错 不存在的话就加到Application中(Application是所有Session共有的 整个web应用程序唯一的一个对象) 以下是引用片段 string strUserId = txtUser Text; ArrayList list = Application Get( GLOBAL_USER_LIST ) as ArrayList; if (list == null) list = new ArrayList(); for (int i = ; i < list Count; i++) if (strUserId == (list[i] as string)) //已经登录了 提示错误信息 lblError Text = 此用户已经登录 ; return; list Add(strUserId); Application Add( GLOBAL_USER_LIST list);
当然这里使用Cache等保存也可以
接下来就是要在用户退出的时候将此用户从Application中去除 我们可以在Global asax的Session_End事件中处理
以下是引用片段 void Session_End(object sender EventArgs e) // 在会话结束时运行的代码 // 注意: 只有在 Web config 文件中的 sessionstate 模式设置为 // InProc 时 才会引发 Session_End 事件 如果会话模式设置为 StateServer // 或 SQLServer 则不会引发该事件 string strUserId = Session[ SESSION_USER ] as string; ArrayList list = Application Get( GLOBAL_USER_LIST ) as ArrayList; if (strUserId != null && list != null) list Remove(strUserId); Application Add( GLOBAL_USER_LIST list);
这些都没有问题 有问题的就是当用户直接点浏览器右上角的关闭按钮时就有问题了 因为直接关闭的话 并不会立即触发Session过期事件 也就是关闭浏览器后再来登录就登不进去了
这里有两种处理方式
使用JavaScript方式
在每一个页面中加入一段javascript代码
cha138/Article/program/net/201311/15531相关参考
Asp.net中防止用户多次登录的方法[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nbs
ASP.NET防止用户多次登录的最简单的方法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 由于
asp.net用户ASPNET登录失败问题 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 执行当
asp.net用户ASPNET登录失败的问题 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 执行
知识大全 轻松解决asp.net用户ASPNET登录失败的问题
轻松解决asp.net用户ASPNET登录失败的问题 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
ASP.NET中防止页面多次提交的代码实现 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 此处提
防止ASP.NET按钮多次提交的办法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 网上查了很多
ASP.NET2.0防止同一用户同时登陆 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 要防止同
在ASP.NET中使用Windows登录[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nb
在ASP.NET中使用Windows登录[4] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nb