EF登录实例

前言

  学习EF发现,泛型,Lambda表达式,标准查询运算符都有所涉及,可是自己对这些知识还是有些陌生,目前阶段只能照葫芦画瓢的用EF敲出一个简单登录实例,具体的原理有待进一步学习。其核心代码其实只有两行而已:

//判断用户名是否存在
List<User> list = db.Users.Where(u => u.UserName == uid).ToList();
//判断密码是否正确
List<User> list2 = db.Users.Where(u => u.UserName == uid && u.Password == pwd).ToList(); 

代码

/// <summary>
/// 数据上下文对象
/// </summary>
static EFTestEntities db = new EFTestEntities();

private void btnLogin_Click(object sender, EventArgs e)
{
    string uid = txtUserName.Text.Trim();
    string pwd = txtPwd.Text.Trim();

    //1.判断用户名是否存在
    List<User> list = db.Users.Where(u => u.UserName == uid).ToList();
    if (list.Count >= 1)
    {
        //用户存在
        //2.判断密码是否正确
        List<User> list2 = db.Users.Where(u => u.UserName == uid && u.Password == pwd).ToList();
        if (list2.Count >= 1)
        {
            //用户存在且密码正确
            MessageBox.Show("登录成功!", "温馨提示");
        }
        else
        {
            MessageBox.Show("用户存在但密码不正确!", "温馨提示");
        }
    }
    else
    {
        MessageBox.Show("用户不存在!", "温馨提示");
    }
}

重写了User类的ToString()方法

public partial class User
{
    public override string ToString()
    {
        return this.UserName + "," + this.Password;
    }
}

总结

  EF好像另一种编程方式一样,即使不会写连接数据库语句和sql语句照样可以完成对数据库的增删改查。另外,在用EF进行数据库查询的时候,和参数化查询类似,它也可以很好的避免sql注入的问题。

展开阅读全文

没有更多推荐了,返回首页