EF(Entity Framework)是什么?
实体框架 EF 是 ADO.NET 中的一组支持开发面向数据的软件应用程序的技术,是微软的一个 ORM 框架。
主要有三种方式:
1)Database FirstDatabase First”模式
我们称之为“数据库优先”,前提是你的应用已经有相应的数据库,你可以使用 EF 设计工具根据数据库生成数据数据类,你可以使用 Visual Studio 模型设计器修改这些模型之间对应关系。
2)Model FirstModel First 模式
我们称之为“模型优先”,这里的模型指的是“ADO.NET Entity Framework Data Model”,此时你的应用并没有设计相关数据库,在 Visual Studio 中我们通过设计对于的数据模型来生成数据库和数据类。
3)Code FirstCode First 模式
我们称之为“代码优先”模式,是从 EF4.1 开始新建加入的功能。 使用 Code First 模式进行 EF 开发时开发人员只需要编写对应的数据类(其实就是领域模型的实现过程),然后自动生成数据库。这样设计的好处在于我们可以针对概念模型进行所有数据操作而不必关心数据的存储关系,使我们可以更自然的采用面向对象的方式进行面向数据的应用程序开发。
什么是ORM?
ORM 指的是面向对象的对象模型和关系型数据库的数据结构之间的互相转换。
(表实体跟表之间的相互转换)
ORM 框架有很多,EF 框架是 ORM 框架的其中一种,是实现了 ORM 思想的框架。
O=>表实体
M=>映射关系
R=>数据库.表
为什么用EF 而不是原生的 ADO.NET ?
1)极大的提高开发效率
EF 是微软自己的产品,开发中代码都是强类型的,xiefl 代码效率非常高,自动化程度非常高,命令式的编程.
2)EF 提供的模型设计器非常强大,不仅仅带来了设计数据库的革命,也附带来的自动化模型代码的功能也极大的提高开发和架构设计的效率.
3)EF 跨数据支持的是 ORM 框架主要功能点之一,带来的是可以通过仅仅改变配置就可以做到跨数据库的能力
…
…
…