1. EF基于一种思想——O/R Mapping,我们先了解ORM的相关概念:
广义上,ORM指的是面向对象的对象模型和关系型数据库的数据结构之间的相互转换。
狭义上,ORM可以被认为是,基于关系型数据库的数据存储,实现一个虚拟的面向对象的数据访问接口。理想情况下,基于这样一个面向对象的接口,持久化一个OO对象应该不需要要了解任何关系型数据库存储数据的实现细节。
2. EF概念:实体框架(Entity Framework)是ADO.NET中的一组支持面向数据的软件应用程序的技术,是微软的一个ORM框架。ORM的核心思想就是把实体的变化映射成表的变化,这样我们在开发的时候不再关心数据库中的表的东西,而是直接面向实体开发。
从下面这张图中我们可以从宏观上看出EF的核心流程这样的,我们的增、删、改、查操作不再是之间面向数据库中的表来操作,而是面向中间的一个上下文(objectContext)来实现,直接操作实体,这些操作经过OR映射完成对相应数据库的操作。
Entity Framework 利用了抽象化数据结构的方式,将每个数据库对象都转换成应用程序对象(entity),而数据字段都转换为属性(property),关系则转换为结合属性(association),让数据库的E/R 模型完全的转成对象模型,如此让程序设计师能用最熟悉的编程语言来调用访问。
而在抽象化的结构之下,则是高度集成与对应结构的概念层、对应层和储存层,以及支持 Entity Framework 的数据提供者(provider),让数据访问的工作得以顺利与完整的进行。
这样开发人员就不用花费很大的力气来掌握和学习那些对数据的操作语言,我们就可以利用LINQ语句对实体操作来完成我们的数据更改操作。
来源:https://www.cnblogs.com/cicistudy/p/6213833.html