EntityFramework 入门 CRUD(新增、查询、修改、删除)

      IT交流互助QQ群:79190545    (Sql Server / Java / Asp.Net / C# / JS / Jquery / Oracle / My Sql / ) 
           -- 欢迎大家进来 聊天,交流 !!。(定期清理 不说话、潜水太深的同学)

     Entity Framework  总共有三种开发模式实现数据访问 :
                     1. DataBase First 
                                   以数据库设计为基础,并根据数据库自动生成实体数据模型,从而驱动整个开发流程。该模式的好处在于使用简单,容易入手。
                       2. Model First 
                                   以建立实体数据模型入手,并依据模型生成数据库,从而驱动整个开发流程。该模式也就是业界流行的面向领域的编程模式,它的优点在于,程序员可以用与设计建模相同的思维来进行代码编写,更符合面向对象的思想。Model First与Database First是互逆的,但最终都是输出数据库和实体数据模型。
                      3. Code First
                                  以程序员完全通过手动编码,就可以使用Entity Framewokr技术来实现数据访问。该模式的优点在于,支持POCO(Plain Old CLR Objects,简单传统CLR对象),代码整洁,程序员对代码的控制也更灵活自如。(也有人称: Code Only)

一、 Entity Framework DataBase First  :

1. 项目中引用 EntityFramework       

             EntityFramework  其他版本可在: http://www.nuget.org/  找到对应的项目以源码 ! 

          本文以 EntityFramework.6.1.3版本为例

       

       首先我们打开项目,点击-工具--》NuGet 包管理器--》程序包管理器控制台 

       在控制台输入安装命令: Install-Package EntityFramework -Version 6.1.3 (然后回车确认安装)

EntityFramework 入门 CRUD(新增、查询、修改、删除)_第1张图片


2.  DataBase First 
项目中CRUD案例

     首先创建 EF 映射关系

EntityFramework 入门 CRUD(新增、查询、修改、删除)_第2张图片

EntityFramework 入门 CRUD(新增、查询、修改、删除)_第3张图片
EntityFramework 入门 CRUD(新增、查询、修改、删除)_第4张图片
EntityFramework 入门 CRUD(新增、查询、修改、删除)_第5张图片

2.1  新增

 

using (var db = new DataBaseFirst())
            {
                Users u = new Users();                
                u.IsDelete = false;
                u.Name = "张三";
                u.Status = 0;
                u.UserID = "dyx";
                u.UserPwd = "1234567";
                db.Users.Add(u);
                int iResult = db.SaveChanges();   //插入数据库 并且-返回 影响行数
            }


2.2 查询

  

    using (var db = new DataBaseFirst())
            { 
                User1 u = db.Users1.Where(p => p.id == 1).FirstOrDefault();   //根据 自增ID 查询 
            }


2.3 修改

//方法 一 : 
// 注 : 根据 Sql Server Profiler 工具监视,此方法会连接 2 次 数据库。
// 一般不建议采用此方法, 后期会更新 另外的方法。

//根据自增ID查询出需要修改的数据 
Users us = db.Users.Where(p => p.id == 1).FirstOrDefault(); 
us.IsDelete = true; //将需要修改的数据重新赋值
us.Name = "张三和李四";//将需要修改的数据重新赋值 
int iResult = db.SaveChanges(); //保存到数据库 并且-返回 影响行数


//方法 二 :
//建议使用该方法
//后期更新



 
   2.4 删除 
   

//方法 一 : 
// 注 : 根据 Sql Server Profiler 工具监视,此方法会连接 2 次 数据库。
// 一般不建议采用此方法, 后期会更新 另外的方法。
 using (var db = new DataBaseFirst())
            {
                User1 u = db.Users.Where(p => p.id == 1).FirstOrDefault();  //根据自增ID查询出需要删除的数据
                User1 user = db.Users.Remove(u);  //删除
                int iResult= db.SaveChanges();   //保存到数据库  并且-返回 影响行数 
             
            }

//方法 二 :
//建议使用该方法
//后期更新

 
   

      IT交流互助QQ群:79190545    (Sql Server / Java / Asp.Net / C# / JS / Jquery / Oracle / My Sql / ) 
           -- 欢迎大家进来 聊天,交流 !!。(定期清理 不说话、潜水太深的同学)

你可能感兴趣的:(EntityFramework 入门 CRUD(新增、查询、修改、删除))