随笔分类 - Code First
摘要:
数据层设计中,我们主要设计了数据对对外开放的 实体基类EntityBase,单元操作接口IUnitOfWork 和 数据仓储接口IRepository,下面我们来解说怎样来使用 EntityFramework 对这些数据访问需求进行实现。EntityFramework 的实现中,我们不仅要实现以上设计的两个接口,还要做以下几件事:1.设计一个与 业务实体解耦的 EntityFramework数据上下文类。2.设计 实体加载方案,将 业务实体 加载到上下文中。3.设计数据迁移方案,对 EntityFramework 的运行环境进行初始化。4.使用 已初始化的上下文 实现 数据仓储操作
阅读全文
摘要:前言 最近在整理EntityFramework数据更新的代码,颇有体会,觉得有分享的价值,于是记录下来,让需要的人少走些弯路也是好的。 为方便起见,先创建一个控制台工程,使用using(var db = new DataContext)的形式来一步一步讲解EF数据更新的可能会遇到的问题及对应的解...
阅读全文
摘要:前言 今天我们来谈谈EF的缓存问题。 缓存对于一个系统来说至关重要,但是是EF到版本6了仍然没有见到有支持查询结果缓存机制的迹象。EF4开始会把查询语句编译成存储过程缓存在Sql Server中,据说EF6中对此做了改进,会把Linq To Entities 的查询条件直接编译缓存在EF中。但是...
阅读全文
摘要:前言 首先对大家表示抱歉,这个系列已经将近一个月没有更新了,相信大家等本篇更新都等得快失望了。实在没办法,由于本人水平有限,写篇博客基本上要大半天的时间,最近实在是抽不出这么长段的空闲时间来写。另外也是一直没想好本篇应该怎样写比较容易理解,于是就一天一天的拖着了。废话不多说,言归正传。 EF的C...
阅读全文
摘要:前言 经过前面EF的《第一篇》与《第二篇》,我们的数据层功能已经较为完善了,但有不少代码相似度较高,比如负责实体映射的 EntityConfiguration,负责仓储操作的IEntityRepository与EntityRepository。而且每添加一个实体类型,就要手动去添加一套相应的代码,也
阅读全文
摘要:前言 经过EF的《第一篇》,我们已经把数据访问层基本搭建起来了,但并没有涉及实体关系。实体关系对于一个数据库系统来说至关重要,而且EF的各个实体之间的联系,实体之间的协作,联合查询等也都依赖于这些实体关系。实体映射 实体与数据库的映射可以通过DataAnnotation与FluentAPI两种方...
阅读全文
摘要:前言 终于到EF了,实在不好意思,最近有点忙,本篇离上一篇发布已经一个多星期了,工作中的小迭代告一段落,终于有点时间来继续我们的架构设计了,在这里先对大家表示歉意。 其实这段时间我并不是把这个系列给忘记了,而是一直在思考,想着接下来应该怎么写。因为园子里已经有很多非常优秀的EF的文章了,比如:E...
阅读全文