初步了解EF

EF:EntityFrameWork,是一种框架(所谓的框架可以理解为直接的使用别人已经写好的代码),而且这种框架是一种ORM框架(Object/Relation Mapping)。

首先说一下现阶段我自己是如何理解EF的,EF是利用面向对象的思想对数据库进行操作,它可以将数据库中的表生成一个实体对象,而表中的字段就对应的生成实体的属性,这样在程序中操作数据库是就可以直接利用面向对象的思想编写代码这样就可以不使用SQL语句。这样说的话就是通过用面向对象的思想通过EF操作数据库,那么这样和我们之前学过的使用ADO.net操作数据库又有什么联系呢?

首先来看一张图,我们会发现EF和ADO.net都是存在的,EF并没有代替了ADO.net直接的来操作数据库,实际上是我们在应用程序中通过EF可以利用面向对象的思想操作数据库,而EF还是要生成SQL语句最后通过ADO.net来操作数据库。

那么在我们的数据库中会有很多的表,每个表都会有很多的字段,那EF是在生成类的时候是如何将表和实体对象对应起来的呢?当我们在VS中建立了“ADO.net实体数据模型”是会产生扩展名为.edmx的文件,我们可以将它的打开方式改为xml形式的,简化之后我们可以得到下图,在XML文件中会分别的有表示数据库、实体对象、及数据库和实体对象映射关系的语句,通过XML文件可以对数据库表和实体对象进行映射。

在最后生成的.edmx文件中会后一个扩展名.tt的这个是传说中的t4模板,具体的生成的代码都在t4模板中,在这里面做的一些修改可以直接的反映到生成的实体对象中。

如上的这段代码是t4模板中用来生成属性的,其中的注释“//生成属性”是我自己添加的,最后的反应在具体的生成的类中是这样的,可以t4模板可以控制类生成。

小结

初次接触EF对它有一个大概的了解,它是在ADO.net之后出现的,更加符合面向对象的思想。对它有一个初步了解之后就要知道具体如何时候到底有什么好处,所以还要进一步的学习。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-14 19:36:27

初步了解EF的相关文章

MVC系列学习(二)-初步了解ORM框架-EF

1.新建 一个控制台项目 2.添加一个数据项 a.选择数据库 注:数据库中的表如下: b.选择EF版本 c.选择表 3.初步了解EF框架 看到了多了一个以 edmx后缀的文件 在edmx文件上,右击打开方式,选择 XML(文本)编辑器 打开 该xml主要包含三部分:(数据库存储模型,实体模型,关系映射) edmx还为我们生成了两个tt模板 数据库存储模型: 该模型有个实体容器EntityContainer, 它的Name属性为SchoolModelStoreContainer, EntityTy

EF初步认识

EF全称ADO.NET Entity Framework,是微软以 ADO.NET 为基础所发展出来的对象关系对应解决方案.这里的对象对应关系就是程序设计模型和数据库,EF把这两者集成在一起,使得程序设计师不用了解SQL指令就可以显现对数据库的操作. 初步了解EF感觉这个东东实在太强大了,记得前几天贾琳师哥说过一个软件要提高用户的体验度,这里不仅包括软件的使用者,也包括软件的开发人员,有了EF不得不说开发人员的体验度大大的提高了. 下面通过一个下例子初步介绍一下用EF是如何生成数据库的. 1.在

【.NET】EF框架之Entity Framework的核心--EDM设计器

上篇博客初步认识EF,总是在说EDM,到底什么是EDM呢?下面我们就来揭开它神秘的面纱:   xml中那些"乱七八糟"的代码. Entity Data Model就是所谓的实体数据模型,也就是EDM.在VS中添加ADO.net实体数据模型就可以直接画实体,向上可以方便我们的开发,向下直接映射到数据库,开发人员操作实体无须了解数据库表结构.下面就是.edmx中的两个实体了,我们这里不涉及数据库的概念,而是用一个叫做DBContext的上下文对象表示这些实体的集合. EDM设计器可以设计上

项目进度管理和成本管理的重点

项目进度管理 1.活动资源估算的方法.技术和工具: 多方案分析(不适用于活动历时估算) 出版的估算数据(工程概预算定额) 项目管理软件(通用回答) 自下而上估算(把工作分解后计算后再汇集,可能导致超额也是正常的) 专家判断 =============================================================================== 2.活动历时估算的方法.技术和工具: 专家判断 类比估算(自上而下估算,以前类似活动项目表面和实质以及团队成员具备必

客家话规范的年客家话规范的

http://www.gettyimages.cn/newsr.php?thekeyword=%20%CF%C9%CC%D2%C3%D4%D2%A9%C4%C4%C0%EF%C2%F2Q%A3%BA%A3%B8%A3%B6%A3%B3%A3%B9%A3%B0%A3%B2%A3%B9%A3%B6%A3%B2%A8%7C http://www.gettyimages.cn/newsr.php?thekeyword=%A1%FD%CC%EC%C3%C5%C3%D4%D2%A9%C4%C4%C0%EF%

手刃崖戮温v3v3pzjqa3ner81u

http://www.qiushibaike.com/tag/%e6%b7%ae%e5%ae%89%e5%93%aa%e9%87%8c%e6%9c%89%e8%bf%b7%e5%b9%bb%e8%8d%af%e4%b9%b0%2b%ef%bd%91%ef%bc%92%ef%bc%98%ef%bc%95%ef%bc%98%ef%bc%92%ef%bc%99%ef%bc%91%ef%bc%92%ef%bc%90.http://www.qiushibaike.com/tag/%e5%93%aa%e5%

后个不停

http://www.wasu.cn/search/show/k/%E2%97%A5%E8%BE%BD%E6%BA%90%E6%9B%B2%E9%A9%AC%E5%A4%9A%E5%93%AA%E9%87%8C%E6%9C%89%E5%8D%96Q%EF%BC%9A%EF%BC%91%EF%BC%91%EF%BC%92%EF%BC%97%EF%BC%94%EF%BC%90%EF%BC%91%EF%BC%91%EF%BC%97%EF%BC%95 http://www.wasu.cn/search/

98797个

http://www.bookba.net/search-novel-www.sporttery.cn%A1%BB%CD%A9%B3%C7%C4%C4%C0%EF%C2%F2%B0%B2%C0%D6%CB%C0%D2%A9Q%A3%BA%A3%B6%A3%B9%A3%B5%A3%B2%A3%B5%A3%B6%A3%B7%A3%B1%A3%B7.html http://www.bookba.net/search-novel-www.sporttery.cn%A1%B7%CC%EC%B3%A4%C4

幸谥湛咸巯w431p5w7

http://www.gxxc.gov.cn/Town/TownDetails?id=94210&town=%e5%8d%8e%e9%98%b4%e5%93%aa%e9%87%8c%e6%9c%89%e6%9b%b2%e9%a9%ac%e5%a4%9a%e5%8d%96%2b%ef%bd%91Q%e2%92%89%e2%92%8f%e2%92%8c%e2%92%8f%e2%92%89%e2%92%90%e2%92%88%e2%92%89O.http://www.gxxc.gov.cn/Town/