学习ef首先要介绍一些基本的概念。
1,概念模型:
就是讲世界上具体的事物抽象为某一种信息结构,这种结构并不依赖于某种计算机,不是某种数据库
支持的数据模型,而是一种概念性的模型。如下图
2,ef的实体框架体系结构如下图:
3,下面介绍几个相关的类:ObjectContext、ObjectQuery、ObjectStateEntry、ObjectStateManager
(1)ObjectContext类:封装 .NET Framework 和数据库之间的连接。此类用作“创建”、“读取”、“更新”和“删除”操作的网关.
ObjectContext 类的实例封装以下内容:
到数据库的连接,以 EntityConnection 对象的形式封装;
描述该模型的元数据,以 MetadataWorkspace 对象的形式封装;
用于管理缓存中持久保存的对象的 ObjectStateManager 对象。;
(2)类ObjectQuery:
ObjectQuery有个有用的方法ToTraceString(),这个方法用于追踪所执行的SQL语句,通过此方法我们可以获取所执行的SQL语句,以便我们查看、分析具体执行的SQL语句。
(3)ObjectStateEntry类:
ObjectStateEntry维护实体实例或关系实例的状态(已添加、已删除、已分离、已修改或未更改)、键值和原始值。还管理已修改属性的列表。
(4)ObjectStateManager类:
ObjectStateManager用于维护对象映射、对象状态/标识管理以及实体实例或关系实例的持久性。