现在的位置: 首页 > 综合 > 正文

单一登录的例子

2012年08月21日 ⁄ 综合 ⁄ 共 1254字 ⁄ 字号 评论关闭
单一登陆就是一个帐号只能在一个地方登陆。后登陆的帐号会把前面登陆的帐号踢走。注意,只是介绍思路,代码很乱。

login.aspx.cs

    protected void Button1_Click(object sender, EventArgs e)
    {
        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
<stringstring> userlist = Cache["userlist"as System.Collections.Generic.Dictionary<stringstring>;
            userlist[Session[
"name"].ToString()] = Session.SessionID;
            Cache[
"userlist"= userlist;
        }
        Response.Redirect(
"default.aspx");
    }

default.aspx.cs

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

    }

抱歉!评论已关闭.