单一登陆就是一个帐号只能在一个地方登陆。后登陆的帐号会把前面登陆的帐号踢走。注意,只是介绍思路,代码很乱。
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 " );
}
{
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> " );}
{
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> " );}