基于ORM框架EntityFramework技术的研究.docxVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于ORM框架EntityFramework技术的研究

基于ORM框架Entity Framework技术的研究徐绍铜(广州工商学院实验实训中心,广东 广州)摘 要:Entity Framework实体框架,简称EF。它是微软公司以 ADO.NET技术为基础所发展出来的一种对象关系对应 (Object Relation Mapping,简称ORM) 的解决方案,是一种对象关系映射机制。EF的核心是支持.NET开发人员使用域特定对象来处理数据库中的关系数据,以达到可以消除对开发人员通常需要编写的大部分数据访问代码的需求。随着编程技术的日新月异和微软公司对EF的高度重视,这一技术必将成为.NET平台数据持久化方面的未来重点开发方向。关键字:Entity Framework;EF;ORM框架;实体框架0 引言一般而言,开发人员利用传统技术进行系统研发时,在数据持久化方面往往需要跟数据库进行数据交换。而在.NET平台中数据存取技术从它的发展历程来看,通常有ODBC、DAO、ADO、ADO.NET等这几种不同的数据访问层使用方式,开发人员最常用的是手写SQL语句然后通过ADO.NET连接类与数据库进行交互,这种方式是目前进行数据库开发时主要的开发技术。虽然它是最接近数据库的底层且执行效率是最高的,但是普遍存在SQL注入的风险,而且当业务发生了轻微的变化时也需要对数据访问代码进行大量的修改,它所耗费的时间和精力都比较大。针对编写SQL访问数据库这种传统技术的缺点,微软新一代基于.NET平台的ORM数据访问技术Entity Framework应运而生。1 Entity Framework技术的概述 现在我们知道EF是一种基于ORM对象关系映射的框架,通俗地说就是它能够使编程人员无需编写繁琐的SQL语句就可以使用对象映射到底层的数据库结构。例如,开发人员在数据库中建立了一个用户USER表,在应用程序中建立了一个与之对应的USER实体类,那么两者之间就建立了一种映射关系。EF就可以把从数据库传回的记录集转换为对象,也可以依据对象当前所处的状态生成一系列相应的SQL命令发给数据库,完成数据的存取工作。这样开发人员在编写应用程序时就不必再关注于数据存储的细节,转而将精力放在业务逻辑上,而不是数据访问层上。1.1 Entity Framework的实体数据模型(EDM) EF的本质是一个ORM的框架,它需要把对象映射到底层的数据库表当中,为解决这种映射关系,EF使用了三种数据模型来进行具体的描述: ①概念模型(Conceptual Model):由概念架构定义语言文件(.csdl)来定义,是一种实体类,它定义了应用程序的业务层所知道的实体和关系,经常供开发人员所使用。 ②存储模型(Storage Model):由存储架构定义语言文件(.ssdl)来定义,是一组与底层数据存储介质(如数据库系统)等直接相对应的类,它描述了表、列、主键、索引、关系等一系列数据库中存在的概念。 ③概念—存储模型映射(Conceptual—Storage Mapping):由映射规范语言文件(.msl)来定义,它是为了解决“概念模型”中的类如何与“存储模型”中的类相互对应的问题。现以关系图来描述三者之间的关系:数据库实体数据模型关系图1.2 Entity Framework的三种开发模式 ①Code First模式:提前编写各种类如实体类对象,数据关系类等代码,然后根据现有代码的描述,EF会自动创建数据表及其各种对应关系。②Database First模式:它是基于原有的数据库,然后利用EF生成器创建与数据表一一对应的实体类对象,创建数据表与实体类相匹配的各种对应关系等。③Model First模式:先利用EF生成器设计出实体模型以及他们之间的关系,然后根据这些实体与关系,生成实体对象相关的代码与数据库对象。 本文将重点讲述Code First开发模式的流程。2 Entity Framework的基本操作对于EF框架来说,CRUD是其核心功能。 CRUD是指在做计算处理时进行的增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)操作。这四种操作主要被用于持久层的数据存取,同时也是开发人员编写代码时最基本的操作。2.1 创建实体类对象模型我们先编写两个实体类对象,分别是User类和Car类,它们之间存在一对多的关系。public class User{ public int ID { get; set; } public string Name { get; set; } //此处省略User类的部分属性 public virtual ListCar Cars { get; set; } }public class Car{public int ID { get; set; }

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档