- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Entity Framwork CodeFirst 学习笔记
Entity Framwork CodeFirst 学习笔记
Entity Framwork CodeFirst 学习笔记一:EF 概念和初次接触
CodeFirst
最近在学习EF ,在园子里面参考了很多大神的文章,自己也看了些电子书,为了加深印象
和快速掌握,特作此笔记和总结。
一、EF 是什么?
Entity Framework 的全称为ADO.NET Entity Framework ,是在ADO.NET 上层实现的ORM
(对象关系映射)封装,其技术架构如下图所示:
1、 Entity Framework 的使用分为连接配置、关系映射、上下文环境定义、数据持久化四
步。
连接配置:如何与数据库进行连接。我们可以通过连接字符串或者代码进行设置
和原来连接ADO.Net 连接数据的方式没有什么太大的区别。
关系映射(如上图紫色的部分):
(1)SSDL 称之为存储模型,用于描述Entity Framework 应用程序的存储体模
型。
(2)MSL 称之为关系映射,用于描述Entity Framework 用用程序概念模型和
存储模型的对于关系。
(3)CSDL 称之为概念模型,它描述构成数据驱动应用程序的概念模型的实
体、关系和函数。
他们都是基于XML 语言,具体代码可以查看EDMX 文件,这里不在赘述。
上下文环境定义:DBContext 可以理解为是一个容器,里面有对象与数据表的映射
关系以及对象本身。
数据持久化:数据持久化就是将内存中的概念模型转换为存储模型,以及将存储模
型转换为内存中的数据模型的统称。
2、EF 的三种编程模式:
DataBase First :开发模式指以数据库设计为基础,并根据数据库自动生成实体数
据模型(edmx 文件)。
Model First :是指从建立实体数据模型入手,并依据模型生成数据库,从而驱动
整个开发流程。该模式也就是业界流行的面向领域的编程模式,它的优点在于,程
序员可以用与设计建模相同的思维来进行代码编写,更符合面向对象的思想。
Model First 与Database First 是互逆的,但最终都是输出数据库和实体数据模型
Code First :程序员完全通过手动编码,就可以使用Entity Framewokr 技术来实现
数据访问。该模式的优点在于,支持POCO (Plain Old CLR Objects ,简单传统
CLR 对象),代码整洁,程序员对代码的控制也更灵活自如。
以下是三种开发模式的比较如下图:
三种编程模式,感觉最方便的还是Code First ,因此主要专注于Code First 方式的学习。
二、CodeFirst 的代码结构如下图:
三、小试一把CodeFirst :
为了便于全面理解CodeFirst ,我们来做一个简单的例子:
1) 首先我们打开VS2012 ,建立一个空的解决方案:EFCodeFirstSolution
2) 右击解决方案,添加一个控制台程序:CodeFirstConsole ,并用Nuget 添加 Entity
Framework 5.0 (内部版本4.4 )。
利用Nuget 添加Entity Framework 这个包之后,会自动添加另外两引用分别是:
System.ComponentModel.DataAnnotations 和 System.Data.Entity。
同时,还会为我们的控制台应用程序添加两个配置 文件,分别是App.config 和
packages.config 。我们打开App.config 文件后会发现自动添加了一下两个节点:
?xml version=1.0 encoding=utf-8?
configuration
configSections
!-- For more info
您可能关注的文档
最近下载
- (100分)中国石油大学2022秋《红楼梦研究第二阶段在线作业.doc VIP
- 第7节货场平面布置及配置图.PDF VIP
- 8.1功与功率 (教学课件)-高中物理人教版(2019)必修第二册 .pptx VIP
- 海浦蒙特MTCC-V2A经典系列别墅电梯控制柜用户手册-中-V1.0.pdf VIP
- 塔里木油田超深气井产出剖面解释方法研究.pdf
- 2025年上海市青少年活动中心(上海市青年发展服务中心)工作人员公开招聘(第二批)笔试备考题库及答案解析.docx VIP
- 2025北京市公安局公共交通安全保卫总队勤务辅警招聘70人笔试备考试题及答案解析.docx VIP
- BRCGS 包装材料(第七版)文件清单.xlsx VIP
- 生物多样性保护与监测.pdf VIP
- 《探寻非遗漆扇之美》课件.pptx VIP
文档评论(0)