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

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

EF实现增删改查的更多相关文章

  1. ASP.NET从零开始学习EF的增删改查

           ASP.NET从零开始学习EF的增删改查           最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...

  2. [.NET源码] EF的增删改查

    EF的增删改查 创建上下文对象:WordBoradEntities db = new WordBoradEntities(); 一.添加: //1.1创建实体对象 User uObj = new Us ...

  3. http://www.cnblogs.com/nangong/p/db29669e2c6d72fb3d0da947280aa1ce.htm ASP.NET从零开始学习EF的增删改查

    http://www.cnblogs.com/nangong/p/db29669e2c6d72fb3d0da947280aa1ce.htmlASP.NET从零开始学习EF的增删改查

  4. easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)

    easyui datagrid 禁止选中行   没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) ...

  5. EF CodeFirst增删改查之‘CRUD’

    最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精    本篇旨在学习EF增删改查四大操作 上一节讲述了EF ...

  6. EasyUI +MVC +EF实现增删改查

    OA项目的框架已经搭建好了,接下来就是在这个框架下完成相应的业务的编码,接下来实现UserInfo页面的增删改查. 1.首先先谈一下遇到的一个框架上的问题:提示EF版本不一致之类的问题,主要是解决方案 ...

  7. [EF]使用EF简单增删改查

    目录 认识EF 添加数据 删除数据 修改数据 查询数据 总结 认识EF ADO.NET Entity Framework 是微软以ADO.NET为基础所发展出来的对象关系对伊(O/R Mapping) ...

  8. ASP.NET MVC学习---(三)EF简单增删改查

    那么现在我们已经大概从本质上了解了ef 巴拉巴拉说了一大堆之后 总算要进入ef的正题了 总在口头说也太不行了是吧~ 没错,现在要用ef进行一些实际的操作 做什么呢? 就做一个入门级的增删改查操作吧 废 ...

  9. MVC学习-用EF做增删改查

    在做增删改查先,先介绍几个知识点: 1.代理类 在将对象方法EF数据上下文时,EF会为该对象封装 一个代理类对象, 同时为该对象的每一个属性添加一个标志:unchanged, 当对该对象某个属性进行操 ...

随机推荐

  1. .Net持续集成 —— Jenkins+Git+WebDeploy

    由于某些历史问题,最近终于可以从java中解脱出来,继续耕耘.Net了,第一步就是把之前的java项目翻成.net.之前已经实现过一次,翻起来还是比较快的(当然基础架构/实体模型已经重新思考并改进), ...

  2. LeetCode题解33.Search in Rotated Sorted Array

    33. Search in Rotated Sorted Array Suppose an array sorted in ascending order is rotated at some piv ...

  3. Go语言map

    map 是一种特殊的数据结构:一种元素对(pair)的无序集合,pair 的一个元素是 key,对应的另一个元素是 value,所以这个结构也称为关联数组或字典.这是一种快速寻找值的理想结构:给定 k ...

  4. 第77节:Java中的事务和数据库连接池和DBUtiles

    第77节:Java中的事务和数据库连接池和DBUtiles 前言 看哭你,字数:8803,承蒙关照,谢谢朋友点赞! 事务 Transaction事务,什么是事务,事务是包含一组操作,这组操作里面包含许 ...

  5. Mybatis+Thymeleaf开发遇到的几个问题笔录

    我的开发工具是IntelliJ IDEA,然后在SpringBoot集成Mybatis,前端用模块引擎Thymeleaf的过程中遇到几个问题,不过也花了点时间,现在记录下来,作为笔记记录. Inval ...

  6. ubuntu默认的Python版本号修改

    ubuntu默认的Python是2.7版本的,键入Python3 就可以使用Python3.X版本.下面修改默认的Python版本, 1.删除/usr/bin 下的Python链接 sudo rm / ...

  7. js对象之XMLHttpReques对象学习

    背景:业务需求是,一个前端(手机和浏览器)HTML页面中有图片,按钮......,需要统计用户点击图片或者按钮的次数. 前端实现:通过一个js来统计HTML页面中所有的图片和按钮对象,并给每个对象赋予 ...

  8. Xamarin.Android 使用 SimpleAdapter 打造 ListView 万能适配器

    第一步:创建 layout1.axml 来展示列表详细内容 <?xml version="1.0" encoding="utf-8"?> <L ...

  9. extjs 解决使用store.sync()方法更新item有时不触发后台action的问题

    问题描述: extjs 解决使用store.sync()方法更新item有时不触发后台action,不出发后台action的原因是item的字段值没有变化 解决方法: item.setDirty(tr ...

  10. Salesforce Sales Cloud 零基础学习(二) Account 和 Contact

    上一篇我们讲了Sales Cloud 中关于一个公司的产品和定价手册的概念,产品需要卖给企业客户(包括渠道伙伴以及合作伙伴等等)或者是个人客户,那客户信息存在哪里?针对企业客户,通过谁去串联起和企业客 ...