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

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 = "";
user.Mail = "ssss";
user.PassWord = "ssss";
user.Plane = "ssss";
user.UserName = "ssss";
user.cardNo = "ssss";
user.phone = "ssss";
user.ID = ;//修改的时候指定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 = "";
user.Mail = "ssss";
user.PassWord = "ssss";
user.Plane = "ssss";
user.UserName = "ssss";
user.cardNo = "ssss";
user.phone = "ssss";
user.ID = ;//删除的时候指定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 > );  

            foreach (var userInfo in data)
{
Console.WriteLine(YJ_USERS.ID + " " + YJ_USERS.UserName);
}

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

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

最新文章

  1. RAID简介
  2. umeng track 相关
  3. Maven:解决-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment variable and mvn script match.
  4. 关闭log4j 输出 DEBUG org.apache.commons.beanutils.*
  5. IOS应用程序升级
  6. 【汉字乱码】IE下GET形式传递汉字。
  7. jquery效果- 显示和隐藏 淡入淡出 滑动 隐藏
  8. mysql颠覆实战笔记(七)--白话理解事务
  9. jdk1.5多线程Lock接口及Condition接口
  10. HTML5 Canvas JavaScript库 Fabric.js 使用经验
  11. bzoj 3158 千钧一发(最小割)
  12. rsyslogd: error during parsing file /etc/rsyslog.conf, on or before line 55: warnings occured in fil
  13. Android开发Java基础之Java语言基础(1)
  14. 安装ubuntu18.10并连接xshell6
  15. metasploit 教程之信息收集
  16. 如何配置Tomcat以使用Apache httpd?
  17. Mysql将查询结果合并为一列
  18. SQL Server 怎么在分页获取数据的同时获取到总记录数
  19. python之OpenCv
  20. vue 里filter的基本用法

热门文章

  1. genymotion常见问题解答
  2. JSP中的作用域
  3. 选择IT事业,意味着终身学习
  4. redux源码学习笔记 - createStore
  5. 微信小程序分包加载实战
  6. IntelliJ IDEA 与 SVN配置
  7. Abp + gRpc 如何实现用户会话状态传递
  8. Mybatis解析mapper
  9. 微信小程序 WXS实现json数据需要做过滤转义(filter)
  10. Linux某些命令找不到/无法使用