ASP.NET之Session实现用户登录

ASP.NET之Session实现用户登录

首先创建三个Web窗体并分别命名为 CratWeb ShopCart UserLogin

1、在 CratWeb.aspx 中操作如下代码





 
   

2、在 CratWeb.aspx.cs 中操作如下代码

 protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                List cart = new List();
                Session["cart"] = cart;
            }
            if (Session["CurrentUser"] !=null)
            {
                this.ItaMsg.Text = "终于等到你 ❤ : "+Session["CurrentUser"].ToString();
            }
            else
            {
                this.ItaMsg.Text = "请您先登录";
            }
        }

        protected void btnShowcart_Click(object sender, EventArgs e)
        {
            //首先判断用户是否登录
            if (Session["CurrentUser"] == null)
            {
                Response.Redirect("UserLogin.aspx");
            }
            //重定向
            Response.Redirect("ShopCart.aspx");
        }

        protected void btnAddTocart_Click(object sender, EventArgs e)
        {
            if (Session["CurrentUser"] == null)
            {
                Response.Redirect("UserLogin.aspx");
            }
            else
            {
                foreach (Control item in form1.Controls)
                {
                    if (item is CheckBox)
                    {
                        CheckBox ckb = (CheckBox)item;
                        if (ckb.Checked)
                        {
                            // Session["cart"] 为object 类型 所以得转换成list
                            ((List)Session["cart"]).Add(ckb.Text);
                        }
                    }
                }
            }
           
            this.btnAddTocart.Text = "添加成功";
        }

        protected void btnExit_Click(object sender, EventArgs e)
        {
            Session.Abandon();//清除Session
            this.ItaMsg.Text = "您还没有登录哟";
        }
    }

3、在 ShopCart.aspx.cs 中操作如下代码

 protected void Page_Load(object sender, EventArgs e)
        {
            //取出对象集合,遍历后显示
            List cart = (List)Session["cart"];
            string info = string.Empty;
            foreach (string item in cart)
            {
                info += item + " ";
            }
            Response.Write("您选得商品为:" + info + "
"); }

4、在 UserLogin.aspx中操作如下代码

用户登录
用户名:
密  码:
 

5、在 UserLogin.aspx.cs 中操作如下代码

 protected void Page_Load(object sender, EventArgs e)
        {

        }
        protected void btnLogin_Click(object sender, EventArgs e)
        {
            //验证信息

            //查询用户信息,验证用户名和密码是否正确
            if (this.txtUserName.Text.Trim() == "admin" && this.txtPwd.Text.Trim() == "12345")
            {
                //保存用户登录信息
                Session["CurrentUser"] = this.txtUserName.Text.Trim();
                //登录成功后跳转到首页
                Response.Redirect("CradWeb.aspx");
            }
            else
            {
                this.lInfo.Text = "用户名或密码错误!";
            }
        }

6、将在 CratWeb.aspx 设置为起始页

效果图如下:
ASP.NET之Session实现用户登录_第1张图片
点击单选框进行商品选择会跳转到登录页面
ASP.NET之Session实现用户登录_第2张图片
登录成功之后 ,再次跳转到 CratWeb.aspx
ASP.NET之Session实现用户登录_第3张图片
ASP.NET之Session实现用户登录_第4张图片
ASP.NET之Session实现用户登录_第5张图片
有所不足,请大家指正,谢谢大家了。

你可能感兴趣的:(ASP.NET)