文章分类 - EntityFramework
摘要:在Entity Framework使用IndexAnnotation来创建索引,但是系统未提供能够创建组合的唯一索引。下面扩展方法可以生成唯一索引。 1 public static class TypeConfigurationExtensions 2 { 3 /// 4 /// ...
阅读全文
摘要:引用System.Transaction.dll,使用TransactionScope来创建事务,commit提交事务,rollback来回滚事务。 1 using (BlogDbContext context = new BlogDbContext()) 2 { 3 using (Tran...
阅读全文
摘要:Entity Framework有三种处理类之间继承关系的方法,现在我们将逐一介绍这三种处理方法。1.Table Per Hierarchy(TPH): 只建立一个表,把基类和子类中的所有属性都映射为表中的列。2.Table Per Type(TPT): 为基类和每个子类建立一个表,每个与子类对应的...
阅读全文
摘要:Entity Framework有三种处理类之间继承关系的方法,现在我们将逐一介绍这三种处理方法。1.Table Per Hierarchy(TPH): 只建立一个表,把基类和子类中的所有属性都映射为表中的列。2.Table Per Type(TPT): 为基类和每个子类建立一个表,每个与子类对应的...
阅读全文
摘要:Entity Framework有三种处理类之间继承关系的方法,现在我们将逐一介绍这三种处理方法。1.Table Per Hierarchy(TPH): 只建立一个表,把基类和子类中的所有属性都映射为表中的列。2.Table Per Type(TPT): 为基类和每个子类建立一个表,每个与子类对应的...
阅读全文
摘要:把一个表拆分成多实体。。例如:把一个博客Blogs表,拆分成Blog、BlogDetail两个实体。(1)实体类 1 // Blog 2 public class Blog 3 { 4 public int Id { get; set; } 5 6 public string ...
阅读全文
摘要:把一个实体对象拆分到多个数据表中。例如:把一个博客Blog实体,拆分到多个表中。(1)实体类 1 public class Blog 2 { 3 public int Id { get; set; } 4 5 public string Title { get;...
阅读全文
摘要:这里介绍N:N配置关系。 举例说明:一个教师Teacher会带很多个学生Student,一个学生也同时会有很多个教师。从教师的角度来观察,教师Teacher与学生Student的关系是一个教师Teacher对应多个学生(1:N)。从学生的角度来观察,一个学生对应多个教师(1:N)。(1)实体类...
阅读全文
摘要:这里介绍1:N配置关系。 举例说明:酒店连锁Chain下面有多个酒店Hotel。从酒店连锁的角度来观察,酒店连锁Chain与Hotel的关系是一个酒店连锁对应多个酒店(1:N)。从酒店的角度来观察,一个酒店对应1个酒店连锁(1:1)。(1)实体类 1 public class Chain 2 ...
阅读全文
摘要:实体之间的关系对应数据库表的关系,有1:0,1:1,1:N,N:N这几种。这里介绍1:0、1:1这两种配置关系。 举例说明:Employee表示员工,Account表示通讯账号。有些员工使用通讯账号,但是有些员工不适用这些通讯账号。从员工的角度来观察,员工Employee与通讯账号Accoun...
阅读全文
摘要:在前一篇博客中,介绍了Entity Framework Fluent API的使用。把所有的实体类的映射都写在了DbContext的OnModelCreating中。但是如果一个应用中的实体类有很多,那么使用这种方式,把所有的实体类的映射都写在了一起,不方便管理。这里介绍另外一种使用方式,可以更...
阅读全文
摘要:Fluent API由命名空间System.ComponentModel.DataAnnotations提供支持。所以在使用之前,需要先引用该dll。这里列出一些常用的Fluent API。(1)通过重写派生 DbContext上的 OnModelCrating方法来访问 Fluent API1...
阅读全文
摘要:DataAnnotations由命名空间System.ComponentModel.DataAnnotations提供支持。所以在使用之前,需要先引用该dll。这里列出一些常用的DataAnnotations。(1)TableAttribute:指定实体类生成的表名1 [Table("Hotel...
阅读全文
摘要:(1)数据库 .XxxContext,位于当前用户文档下。 如:解决方案名称为:EntFra01,将会生成名为EntFra01Context的数据库(2)表 类名的复数形式,表属于dbo用户,列名与属性名称相同 如:如对于Hotel表,将会生成dbo.Hotels(3)主键 属性名为或,将...
阅读全文
摘要:前言 使用EF框架CodeFirst时,可使用DataAnnotations和FluentAPI两种方法来配置EF映射到数据库的规则。但是DataAnnotations仅涵盖一部分FluentAPI功能,因此有一些情况是无法使用DataAnnotations实现的。除了控制映射之外,Fluen...
阅读全文
摘要:ADO.NETEntityFramework(EF)是微软以ADO.NET为基础所发展出来的对象关系对应(O/RMapping)解决方案,在早期被称作ObjectSpace。它消除了对开发人员通常需要编写的大部分数据访问代码的需求。现在已被包含在.NetFrameowrk35SP1及以上版本中。...
阅读全文