EntityFramework数据库优先增删改查

查询

第一种:Linq语法:
        from 变量名 in db.对象名 where 条件;
        orderbyselectjoin
第二种:Lambda语法:
        db.对象名.Where(条件);
        OrderBy()OrderByDescending()GroupBy()Select()

增加

1. 将对象放入EF容器中
    db.对象名.Add(对象);
2. 执行写入数据库操作,将数据进行持久化
    db.SaveChanges(); 

删除

第一种:先查后删:
1.先根据条件将对象查询出来
    a.linq语法:
        (from 变量名 in db.对象名 where 条件).FirstOrDefault();
    b:Lambda语法:
        db.对象名.Where(条件).FirstOrDefault();
        或:
        db.对象名.FirstOrDefault(条件);
2. 删除该对象:
    db.对象名.Remove(对象);
3. 执行写入数据库操作,将数据进行持久化
    db.SaveChanges(); 
    
第二种:不查询直接删除:
1.声明一个对象
    new 对象
2. 附加到EF容器中
    db.对象名.Attach(对象);
3. 标记为删除
    db.对象名.Remove(对象);
    或:
    db.Entry<对象名>(对象).State=EntityState.Deleted;
4. 执行写入数据库操作,将数据进行持久化
    db.SaveChanges(); 

更新

第一种:先查后改:
1.先根据条件将对象查询出来
    a.linq语法:
        (from 变量名 in db.对象名 where 条件).FirstOrDefault();
    b:Lambda语法:
        db.对象名.Where(条件).FirstOrDefault();
        或:
        db.对象名.FirstOrDefault(条件);
2. 修改该对象的属性
3. 执行写入数据库操作,将数据进行持久化
    db.SaveChanges(); 
    
第二种:不查询直接更新:
1.声明一个对象
    new 对象
2. 附加到EF容器中
    db.对象名.Attach(对象);
3. 标记为修改
    db.Entry<对象名>(对象).State=EntityState.Modified;
4. 执行写入数据库操作,将数据进行持久化
    db.SaveChanges(); 
发布了10 篇原创文章 · 获赞 0 · 访问量 70

猜你喜欢

转载自blog.csdn.net/weixin_44719554/article/details/105306746