单一登陆的例子

前端之家收集整理的这篇文章主要介绍了单一登陆的例子前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

单一登陆就是一个帐号只能在一个地方登陆。后登陆的帐号会把前面登陆的帐号踢走。注意,只是介绍思路,代码很乱。

login.aspx.cs

protected void Button1_Click( object sender,EventArgse)
{
Session[
" name " ] = TextBox1.Text;
if (Cache[ " userlist " ] == null )
{
System.Collections.Generic.Dictionary
< string , string > userlist = new System.Collections.Generic.Dictionary < string , string > ();
userlist.Add(Session[
" name " ].ToString(),Session.SessionID);
Cache[
" userlist " ] = userlist;
}
else
{
System.Collections.Generic.Dictionary
< string , string > userlist = Cache[ " userlist " ] as System.Collections.Generic.Dictionary < string , string > ;
userlist[Session[
" name " ].ToString()] = Session.SessionID;
Cache[
" userlist " ] = userlist;
}
Response.Redirect(
" default.aspx " );
}


default.aspx.cs

protected void Page_Load( object sender,EventArgse)
{
if (Session[ " name " ] == null )
Response.Write(
" <script>alert('请登陆');location.href='login.aspx';</script> " );
else if ((Cache[ " userlist " ] as System.Collections.Generic.Dictionary < string , string > )[Session[ " name " ].ToString()] != Session.SessionID)
Response.Write(
" <script>alert('已经有相同帐号登陆');location.href='login.aspx';</script> " );}

猜你在找的设计模式相关文章