标签:
学习MVC我做了一些笔记,在学习MVC之前呢,我们需要先了解和MVC一起使用的小伙伴们
做事情要抓重点:
为什么要学MVC
MVC的好处
MVC如何使用,MVC的特点
MVC的原理
这种MVC模式能否扩展
-》ORM 框架
1.从广义上理解:ORM框架 面向对象的对象模型和关系型数据库的数据结构之间的转换
从狭义上理解:ORM可以被认为是,基于关系型数据库的数据存储,实现一个虚拟的面向对象的数据访问接口。
-》EF框架(Entity Framework)
一种ORM框架→工作机制:<1>追踪实体 <2>生成sql语句 <3>调用ado.net执行数据库操作
csdl:概念架构定义语言
ssdl:存储架构定义语言(逻辑模型)
msl:映射架构语言
简称:EDM .edmx 本质就是一个xml文件
EF通过EntityClient(基于Provider模式),与ADO.NET 2.0相似。向EDM发送EntitySql操作Entity,ADO.NET 2.0是向数据库发送sql。所有发往EDM的操作都要经过EntityClient,包括Linq to Entity
优缺点:
优点:可以使用XML进行定义,可以动态添加对象映射到数据库中(生成DDL-Data Define Language),改动数据库不会影响bll业务逻辑层
缺点:EF第一次运行的时候,需要对EDM进行分析读取,导致有些慢,以后不会慢
提供从关系数据库构架到对象的映射
延迟加载机制(如果启用属性,启用延迟加载)
优点:用的什么数据才去查,有利于性能
缺点:数据了太大的时候一下加载到内存中,内存会爆掉(使用foreach的时候)
外键太多会影响性能(查主表的时候,如果用到子表会把子表查出来),不要访问子表太多
EF上下文维护有三种方式(避免多个上下文,避免脏数据):
<1>全局唯一,只用一个上下文,缺点:EF有缓存,当数据渐渐增多时,缓存会吃掉内存,pass掉
<2>在web开发中,一次请求中用一个实例,请求解除,释放掉
<3>线程唯一,一个线程有一个上下文实例
补充:DataSet类非常类似于数据库的结构,它包含DataTable,DataRow,DataColumn和DataRelation类,而不提供对象支持
标签:
原文地址:http://www.cnblogs.com/dongbo19910728/p/4305653.html