我们会使用这两个设置来决定是否加载导航属性.默认情况这两个值都是true的,也就是说会以延迟加载的方式加载导航属性,也就是当我们访问导航属性的时候才会去查数据库获取导航属性的数据.db.Configuration.ProxyCreationEnabled = true ; db.Configuration.LazyLoadingEnabled = true ; 想禁用加载实体的导航属性,可以这样设置:db.Configuration.ProxyCreationEnabled = true ;db…
今天在开发项目的时候,使用 EF,突然遇到了这样一个错误: An entity object cannot be referenceed by multiple instances of IEntityChangeTracker 这个异常我想大家应该很熟悉,大致的意思是 EF 实体操作不在同一个 DbContext,我贴下出现错误的代码: public class AdTextUnitService : IAdTextUnitService { private IAdTextUnitReposi…
系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 使用Entity Framework Code First模式构建数据库对象 已经决定使用EF CodeFirst来创建数据库了,因此我们使用POCO类(“Plain Old CLR Objects)来定义我们的Model.我们通过写标准的.NET类来定义适合我们API的领域模型.那些POCO类就会为我们创建数据库. 我们的培训系统数据库比较简单,首先我们需要有学生”Students”,导师”T…
回到目录 在EF里,我们设计模型时,会设计到多对多关系,在EF里会把这种关系会转成两个一对多的关系表,这是比较友好的,因为多对多来说,对于业务本身没什么意思,所以隐藏了,没什么坏处,但对于这个隐藏来说,对开发人员来讲你就无法主动控制这张关系表了,而需要使用EF的update来更新主表的同时去更新关系表,这对于初学者会出现一些问题,今天说的就是多对多关系无法更新和插入的问题. 数据结构 public partial class WebManageRoles : Lind.DDD.Domain.En…
写在前面 阅读目录: 设计误区 数据库已死 枚举映射 关联映射 后记 在上一篇<一缕阳光:DDD(领域驱动设计)应对具体业务场景,如何聚焦 Domain Model(领域模型)?>博文中,探讨的是如何聚焦领域模型(抛开一些干扰因素,才能把精力集中在领域模型的设计上)?需要注意的是,上一篇我讲的并不是如何设计领域模型(本篇也是)?而是如何聚焦领域模型,领域模型的设计是个迭代过程,不能一概而论,还在路上. 当有一个简单的领域模型用例,完成一个从上而下过程的时候,就需要对领域模型和数据库进行对象关系…
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 2-11 两实体间Is-a和Has-a关系建模 问题 你有两张有Is-a和Has-a关系的表,你想将他们建模成两实体间的Is-a和Has-a关系. 解决方案 假设你在数据库中,有两张描述风景名胜公园和公园地址的表,Loacation和Part.在应用中,park是location的简单(simply)类型(译注:从上下文看应该是指子类).另外,一个park有一个拥有邮寄地址的管理办公室,这个…
Entity Framework Code First 简称 EF CF也行,就是在开发的时候,以代码先行的原则,开发人员无需考虑 数据库端的一些问题(开发过程中基本不需要在数据库管理器上操作) 言归正传吧,最近刚刚入手MVC EF 的CF开发,原因就是他的开发效率比较高,适合中小型项目.既然说到项目,那就涉及到稍微复杂点的数据表关系.要使用联合查询,外键等技术才能实现一些功能. 下面举例说明我在实际测试中遇到的一些问题. 场景:用户权限管理系统中的关系——分为 公司 部门 职员 3个表 由于是…
表关系建立: http://blog.csdn.net/niewq/article/details/17232321 一对多: namespace LckLib.EF.V6.Models { public class Role { public int ID { get; set; } [MaxLength()] [Required] public string RoleName { get; set; } public string Remark { get; set; } public vi…
Domain Model(领域模型) 和 EntityFramework 如何正确进行对象关系映射? 写在前面 阅读目录: 设计误区 数据库已死 枚举映射 关联映射 后记 在上一篇<一缕阳光:DDD(领域驱动设计)应对具体业务场景,如何聚焦 Domain Model(领域模型)?>博文中,探讨的是如何聚焦领域模型(抛开一些干扰因素,才能把精力集中在领域模型的设计上)?需要注意的是,上一篇我讲的并不是如何设计领域模型(本篇也是)?而是如何聚焦领域模型,领域模型的设计是个迭代过程,不能一概而论,还…
关系映射 一.映射(多)对一.(一)对一的关联关系 1).使用列的别名 ①.若不关联数据表,则可以得到关联对象的id属性 ②.若还希望得到关联对象的其它属性.则必须关联其它的数据表 1.创建表: 员工表: DROP TABLE IF EXISTS `tbl_employee`; CREATE TABLE `tbl_employee` ( `id` int(11) NOT NULL AUTO_INCREMENT, `user_name` varchar(255) DEFAULT NULL, `ge…