【C#】ASP.NET网页中添加单点登录功能
2015-03-31 15:44
501 查看
[b]背景[/b]
首先,要说明的是,原先需求定义的是,同一个账号只能同时有一个人来登录,如果另外一个登录的话,前一个登陆者就自动被踢掉。本来原先要做成存储到服务器的数据库中,但是后来如果是非正常退出的话 下次就没法登录,这下就上网找资料 改了以后就有了下面的东东了。
[b]登陆页后台[/b]
View Code
PS: 这段代码就是判断依据。
[b]结果演示[/b]
[b]
[/b]
首先,要说明的是,原先需求定义的是,同一个账号只能同时有一个人来登录,如果另外一个登录的话,前一个登陆者就自动被踢掉。本来原先要做成存储到服务器的数据库中,但是后来如果是非正常退出的话 下次就没法登录,这下就上网找资料 改了以后就有了下面的东东了。
[b]登陆页后台[/b]
asePage.aspx.cs //单点登录判断 Hashtable hOnline = (Hashtable)Application["Online"]; if (hOnline != null) { IDictionaryEnumerator idE = hOnline.GetEnumerator(); while (idE.MoveNext()) { if (idE.Key != null && idE.Key.ToString().Equals(Session.SessionID)) { //already login if (idE.Value != null && "XXXXXX".Equals(idE.Value.ToString())) { hOnline.Remove(Session.SessionID); Application.Lock(); Application["Online"] = hOnline; Application.UnLock(); string js = "<script language=javascript>alert('{0}');parent.window.location = '{1}' </script>";//window.location.replace('{1}') Response.Write(string.Format(js, "帐号已在别处登录 ,你将被强迫下线(请保管好自己的用户密码)!", ResolveClientUrl("~/Login.aspx"))); Session["UserInfo"] = null; return; } break; } } }
View Code
PS: 这段代码就是判断依据。
[b]结果演示[/b]
[b]
[/b]
相关文章推荐
- C# asp.net 抓取需要登录的网页内容 抓取asp.net登录验证的网站
- c# 实现网页上用户自动登陆|asp.net 模拟网站登录
- ASP.NET - 如何:向 ASP.NET 网页中添加登录按钮
- ASP.NET 添加 AJAX 和客户端功能_第二篇_2.1_ASP.NET 网页中的客户端脚本
- c# 实现网页上用户自动登陆|asp.net 模拟网站登录
- asp.net C#进行网页间多值传递的方法
- Asp.net(C#)实现验证码功能
- Asp.net(C#)实现验证码功能
- 如何在VS.NET/C# Builder开发的网页中也能实现DOS下录入数据回车换行的功能
- Asp.net(C#)实现验证码功能
- 利用xmlHTTP获取网页源码[ASP.NET C#]
- Asp.net(C#)实现验证码功能
- ASP.NET 2.0 最值得期待的功能 - 网页模板
- Asp.net(C#)实现验证码功能
- asp.net(c#)操作iis全功能版系统(08年3月5日正式发布升级版本)
- Asp.net(C#)实现验证码功能
- 用C#(asp.net)写出登录验证码!
- Asp.net(C#)实现验证码功能(转贴)
- Asp.net(C#)实现验证码功能
- 今天在使用C#的ASP.NET给Access的数据库中添加新记录发现的问题