EF简介及CRUD简单DEMO

一、实体框架(Entity FrameWork)简介

  • 简称EF

  • 与Asp.Net MVC关系与ADO.NET关系

  • ADO.NET Entity FrameWork是微软以ADO.NET为基础所发展出来的对象关系对应(O/R Mapping)解决方法,早期被称为ObjectSpace,最新版本是EF6.0【CodeOnly功能得到了更好的支持】

  • 实体框架Entity FrameWork 是ADO.NET中的一组支持开发面向数据的软件应用程序的技术。是微软的一个ORM框架。

二、什么是O/R Mapping

  • 广义上:ORM指的是面向对象的对象模型和关系型数据库接口之间的相互转换。

  • 狭义上,ORM可以被认为是,基于关系型数据库的数据存储,实现一个虚拟的面向对象的数据访问接口。理想情况下,基于这样一个面向对象的接口,持久化一个OO对象应该不需要了解任何关系型数据库存储数据的实现细节。

EF简单演示

第一步:右击-->添加新项-->ADO.NET 实体数据模型

第二步:实体数据模型向导,默认即可

第三步:新建连接

 

第四步:勾上(是,在连接字符串中包含敏感数据),下一步

 

第五步:选择模型中包括那些数据库表,完成即可

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace EFDemoFirst
 8 {
 9     class Program
10     {
11         static void Main(string[] args)
12         {
13             //添加一个添加操作
14             //1、声明一个EF的上下文
15             DEMOEntities dbContext = new DEMOEntities();
16             //2、声明一个实体
17             T_Seats seats = new T_Seats();
18             seats.userName = "test";
19             seats.pwdWord = "test1123";
20             //3、告诉EF做一个插入操作
21             dbContext.T_Seats.Add(seats);
22             //4、告诉上下文,把实体的变化保存到数据库里面去
23             dbContext.SaveChanges();
24             Console.Write("ok");
25             Console.ReadKey();
26         }
27     }
28 }
添加DEMO
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace EFDemoFirst
 8 {
 9     class Program
10     {
11         static void Main(string[] args)
12         {
13             //1、声明一个EF的上下文
14             DEMOEntities dbContext = new DEMOEntities();
15             //2、声明一个实体
16             T_Seats seats = new T_Seats();
17             seats.userName = "testTest";
18             seats.pwdWord = "123456 ";
19             seats.id = 4;
20             //3、告诉EF做更新操作
21             //System.Data.Entity.EntityState.Added:添加
22             //System.Data.Entity.EntityState.Deleted:删除
23             //System.Data.Entity.EntityState.Modified:修改
24             dbContext.Entry<T_Seats>(seats).State = System.Data.Entity.EntityState.Modified;
25             //4、告诉上下文,把实体的变化保存到数据库里面去
26             dbContext.SaveChanges(); //执行SQL脚本的地方
27             Console.Write("ok");
28             Console.ReadKey();
29         }
30     }
31 }
修改DEMO
 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Threading.Tasks;
 6 
 7 namespace EFDemoFirst
 8 {
 9     class Program
10     {
11         static void Main(string[] args)
12         {
13             //1、声明一个EF的上下文
14             DEMOEntities dbContext = new DEMOEntities();
15             ////2、声明一个实体
16             T_Seats seats = new T_Seats();
17             seats.id = 4; //删除的WHERE条件,不加全部删除
18             //3、告诉ef做更新操作
19             //system.data.entity.entitystate.added:添加
20             //system.data.entity.entitystate.deleted:删除
21             //system.data.entity.entitystate.modified:修改
22             dbContext.Entry<T_Seats>(seats).State = System.Data.Entity.EntityState.Deleted;
23             //4、告诉上下文,把实体的变化保存到数据库里面去
24             dbContext.SaveChanges(); //执行SQL脚本的地方
25             Console.Write("ok");
26             Console.ReadKey();
27         }
28     }
29 }
删除DEMO

猜你喜欢

转载自www.cnblogs.com/chenyanbin/p/11221490.html