Entity Framework实现ASP.NET 登录和注册功能

一、创建Entity Framework的实体数据模型
1)在这里插入图片描述
2)在这里插入图片描述
3)点击“新建连接”在这里插入图片描述
4)在这里插入图片描述
点击“确定”后 一直点击“下一步”即可

5)选择版本在这里插入图片描述
6)选择需要的表在这里插入图片描述点击完成即可,会获得一个数据库实体模型的上下文对象,只要涉及到关于数据库的操作,调用数据库的上下文集合就可以了。在这里插入图片描述
二、
数据库的实体数据模型创建好了,我们还需要创建一个类,这个类实现登录(查询数据库)和注册(查询数据库)功能。

  public class UserServer
    {

        //登录
        public static Users Login(string id, string pwd)
        {
            using (UserManagerEntities db = new UserManagerEntities())//获取数据库上下文对象
            {
                Users users = db.Users.FirstOrDefault(u => u.UserName == id && u.UserPwd == pwd);//查找数据库里有没有账号和密码
                return users;//返回一个Users对象
            }
        }
        //注册
        public static bool add(Users users)
        {
            using (UserManagerEntities db = new UserManagerEntities())
            {

                db.Users.Add(users);
                int row = db.SaveChanges();
                return row > 0;

            }


        }


    }

三、准备工作准备好了,现在开始实现功能
1)实现登录功能在这里插入图片描述

   protected void Button1_Click(object sender, EventArgs e)
        {
            string id = TextBox1.Text.Trim();//获取文本框的值
            string pwd = TextBox2.Text.Trim();
           
            if (id.Equals(string.Empty)&&pwd.Equals(string.Empty))//判断文本框是否为空
            {

                ClientScript.RegisterStartupScript(GetType(), "error", "alert('不能为空')", true);    
            }
            else
            {
                Users users = UserServer.Login(id, pwd);//调用登录方法(UserServer类)

                if (users!=null)
                {
                    Session["shu"] = id;//用session保存登录名,主页需要登录名   ps:不能写到跳转页面的下面,如果写到的话,session将等不到数据
                    Response.Redirect("Index.aspx");
                
                }
                else
                {
                    ClientScript.RegisterStartupScript(GetType(), "error", "alert('登录失败')", true);
                }
            }



        }

2)注册功能功能
在这里插入图片描述

 protected void Button1_Click(object sender, EventArgs e)
        {
            string id = TextBox1.Text.Trim();
            string pwd = TextBox2.Text.Trim();
            string queren = TextBox3.Text.Trim();
            int age = Convert.ToInt32( TextBox4.Text.Trim());
            string email = TextBox5.Text.Trim();
            string img = TextBox6.Text.Trim();

            if (id.Equals(string.Empty)&&pwd.Equals(string.Empty)&&queren .Equals(string.Empty)
                && age.Equals(string.Empty) && email.Equals(string.Empty) && img.Equals(string.Empty))

            {
                ClientScript.RegisterStartupScript(GetType(), "error", "alert('不能为空')", true);


            }
            else
            {
                if (pwd.Equals(queren))
                {
                    Users users = new Users()
                    {
                        UserName = id,
                        UserPwd = pwd,
                        UserAge = age,
                        UserEmail = email,
                        UserImage = img

                    };
                    bool a  =UserServer.add(users);//调用注册方法
                    if (a)
                    {
                        ClientScript.RegisterStartupScript(GetType(), "error", "alert('成功')", true);
                    }
                    else
                    {
                        ClientScript.RegisterStartupScript(GetType(), "error", "alert('失败')", true);
                    }


                }
                else
                {
                    ClientScript.RegisterStartupScript(GetType(), "error", "alert('两次输入密码不一致')", true);
                }
            }


            




        }

这样就可以实现登录和注册功能了

posted @ 2020-05-10 15:05  南墙1  阅读(318)  评论(0编辑  收藏  举报