• 实体框架(Entity Framework)快速入门


    实体 框架 (Entity Framework )简介

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

    ORM知识补充:什么是O/R Mapping?

    广义上,ORM指的是 面向对象 的对象模型和关系型 数据库 的数据结构之间的相互转换。

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

    ORM三个字母分别代表如下图所示:

    ORM IN EF

    在EF中的实体数据模型(EDM)由以下三种模型和具有相应文件扩展名的映射文件进行定义。

    • 概念架构定义语言文件 (.csdl) -- 定义概念模型。R
    • 存储架构定义语言文件 (.ssdl) -- 定义存储模型(又称逻辑模型O)。
    • 映射规范语言文件 (.msl) -- 定义存储模型与概念模型之间的映射M。

    实体框架 使用这些基于 XML 的模型和映射文件将对概念模型中的实体和关系的创建、读取、更新和删除操作转换为数据源中的等效操作。EDM 甚至支持将概念模型中的实体映射到数据源中的 存储过程 。

    如下图所示的EDMX的定义:

     

    EF中操作数据库的网关

    ObjectContext封装 .NET Framework 和数据库之间的连接。此类用作“创建”、“读取”、“更新”和“删除”操作的网关。

    ObjectContext 类为主类,用于与作为对象(这些对象为 EDM 中定义的实体类型的实例)的数据进行 交互 。

    它封装了EF 到数据库的连接,封装了表对应的实体的集合,所以我们所有的操作都应该是针对于ObjectContext下的实体集合,修改实体集合后,通过调用ObjectContext的SaveChange方法将对实体集合的操作映射回数据库。当然ObjectContext通过我们上面EDMX的定义,也就是表、实体的关系的xml定义,通过集合的变化,生成对应的 sql ,并调用Ado.Net来实现对数据库的操作。

    如下图所示:

    当然上面只是一个简单的图,更为专业点的图应该是这样,如下图所示:

    通过上面的介绍我们就基本上认识到了Entity Freamwork的基本的使用情况,当然是很浅显的。希望对初学者有帮助!

  • 相关阅读:
    SOA概念误解实施要点
    Visual Studio 2008 和 .NET Framework 3.5 Service Pack 1 Beta 发布
    【翻译】使用LINQ来简化编程的7个技巧
    我对SOA的认识以及心得
    《SQL Server 2005范例代码查询辞典》出版
    Security Tutorials系列文章以及AJAX系列文章
    代朋友发招聘信息,C++程序员
    二叉树相关算法
    最近项目的一些心得(纯贴代码)
    大型互联网网站架构心得之一:分
  • 原文地址:https://www.cnblogs.com/zk-zhou/p/6667618.html
Copyright © 2020-2023  润新知