当前位置: 移动技术网 > IT编程>开发语言>.net > 【EF学习笔记04】----------EF简单增删改查

【EF学习笔记04】----------EF简单增删改查

2018年10月11日  | 移动技术网IT编程  | 我要评论

晓风默,识骨寻踪第一季,周伦玲

从来没想到过能在这个上面翻车,感慨自学没有培训来得系统啊,废话不多说

orm:对象关系映射(object relational mapping,简称orm,或o/rm,或o/r mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换

ef:数据持久化

   是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称;数据模型可以是任何数据结构或对象模型,存储模型可以是关系模型、xml、二进制流等;其实,简单来说,就是将数据存储到数据库中,为什么这么说呢?因为持久化就不是暂时的,而存储分为暂存和永存两个方面,暂存指的是存储到了计算机的内存中,电源关闭即丢失。而永存就是存储到了类似数据库里,数据就可以反复使用。除此以外,持久化封装了数据访问细节,为大多数业务逻辑提供面向对象的api。

   1. 通过持久化技术可以减少访问数据库数据次数,增加应用程序执行速度;

   2. 代码重用性高,能够完成大部分数据库操作; 

   3. 松散耦合,使持久化不依赖于底层数据库和上层业务逻辑实现,更换数据库时只需修改配置文件而不用修改代码

紧接正文,ef codefirst进行增删改查的方式

引用entityframework后,我们建立好了实体模型

添加:

1、声明 一个ef的上下文

dbentities dbcontext = new dbentities();

2、声明一个user实体

yj_users user = new yj_users();
user.loginname = "****";
user.mail = "****";
user.password = "****";
user.plane = "****";
user.username = "****";
user.cardno = "****";
user.phone = "****";

 

3、 告诉ef咱们对上面的实体做一个插入操作

dbcontext.yj_users.add(user);

      告诉上下文把实体的变化保存到数据库里面去。

dbcontext.savechanges();//添加、修改、删除时都要用到的

修改:

1、声明一个user实体

            yj_users user = new yj_users();
            user.loginname = "111";
            user.mail = "ssss";
            user.password = "ssss";
            user.plane = "ssss";
            user.username = "ssss";
            user.cardno = "ssss";
            user.phone = "ssss";
            user.id = 1;//修改的时候指定id

2、告诉上下文咱们的对此实体进行更新操作

            dbcontext.entry(yj_users).state = entitystate.modified;     //这里只修改一列
            dbcontext.entry(yj_users).property(u => u.username).ismodified = true;

 

3、告诉上下文把实体的变化保存到数据库里面去

            dbcontext.savechanges();//执行sql脚本的地方

删除:

1、声明一个user实体

            yj_users user = new yj_users();
            user.loginname = "111";
            user.mail = "ssss";
            user.password = "ssss";
            user.plane = "ssss";
            user.username = "ssss";
            user.cardno = "ssss";
            user.phone = "ssss";
            user.id = 1;//删除的时候指定id

2、告诉上下文咱们的对此实体进行删除操作

            1.dbcontext.entry<hksj_users>(user).state = system.data.entitystate.deleted;
            2.dbcontext.yj_users.remove(user); 
db.savechanges();

 

查询:

 

            var data = dbcontext.yj_users.where(u => u.id > 0);  

            foreach (var userinfo in data)
            {
                console.writeline(yj_users.id + "  " + yj_users.username);
            }

 

 

 这里附一篇博客吧,里面写的挺详细的

【ef学习笔记04】----------ef简单增删改查https://www.cnblogs.com/gosky/p/5751815.html

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网