通过 Entiy Framework实践系列 文章,理了理 Entity Framework 的实体关系. 为什么要写文章来理清这些关系?“血”的教训啊,刚开始使用 Entity Framework 的时候,由于没有静下心来认真理清关系,走了一些"痛不欲生"的弯路.而我们目前开发的项目都在使用 Entity Framework,为了避免其他人再经历"痛不欲生"的弯路.于是下定决心边“理清关系”边“写博客”.而写博客可以逼着自己把问题完整地解决,避免半 途而废.当写出…
什么是Entity Framework呢(下面简称EF)? EF(实体框架)是ADO.NET中的一组支持开发面向数据的软件应用程序的技术,是微软的一个ORM框架.ORM(对象关系映射框架):指的是面向对象的对象模型和关系型数据库的数据结构之间的相互转换. 如此官方的解释,你懂吗? 我理解的是,业务实体在内存中表现为对象,在数据库中表现为数据,内存中的对象之间,存在关联和继承关系,而在数据库中,关系数据无法直接表达这些关系.而对象-关系映射(ORM)就是解决这一问题的.ORM作为一个中间件,实现程…
推荐文章 EF性能之关联加载 总结很好 一:介绍三种加载方式 Entity Framework作为一个优秀的ORM框架,它使得操作数据库就像操作内存中的数据一样,但是这种抽象是有性能代价的,故鱼和熊掌不能兼得.但是,通过对EF的学习,可以避免不必要的性能损失.本篇只介绍关联实体的加载的相关知识,这在我之前的文章中都有介绍. 我们已经了解到EF的关联实体加载有三种方式:Lazy Loading,Eager Loading,Explicit Loading,其中Lazy Loading和Explic…
这篇文章讨论多对多的关系. 让我们从最简单的例子开始.我们让 EF4.1 来推断表的映射.我在订单和雇员之间建模多对多的关系. )] publicstring CustomerName { get; set; } public DateTime TransactionDate { get; set; } publicbyte[] TimeStamp { get; set; } publicvirtual List<OrderDetail> OrderDetails { get; set; }…
这几天研究Asp.net5,也试着写了一些示例代码,因为网上的资料实在是太少了,所以在此把一些问题的解决方法记录下来,以备后查. 问题: 在EF7中,假如数据库已经存在,并且两个表具有外键关系,但是实际数据库中并没有加上这个约束,如何处理? 比如,我们有一个公司表,具有两个字段,id和name,如下所示: public class Branch { /// <summary> /// 公司ID /// </summary> [Key] public string ID { get;…
数据库模型 这个基本上是浓缩 Jerry Tom博客的内容,作为参考http://www.cnblogs.com/mbailing/archive/2012/07/31/2616779.html 说明以后再写. 城市实体类 public partial class city { public int ID { get; set; } [MaxLength(100)] [RegularExpression(@"^[a-zA-Z''-'\s]{1,40}$")] public string…
1.定义基础实体对象 public class BaseEntity { public int Id { get; set; } public DateTime? CreateTime { get; set; } public DateTime? UpdateTime { get; set; } public BaseEntity() { CreateTime = DateTime.Now; } } 2.定义业务实体对象 public class DictEntity:BaseEntity {…
抽象实体不能new 抽象类:人,实体类:学生 人 p_人= new 学生();   添加数据,学生和人都添加 抽象类可以提供一个抽象的方法,但是并没有实现,类似接口,但又不同于接口.子类继承父类时必须实现抽象的方法.这种形式有点想模板模式了.可以在父类中完成大部分功能,有特性的实现交给子类完成.当然抽象类中也可以不提供抽象方法. 首先,有对你写实体类做要求,抽象类里面的东西是要你必须去实现,因为其他地方很有可能要用到里面的东西.其次,给别的地方提供方便.比如说,其他的一个地方要调用你写的实体类,…
实际的开发中,对数据库的操作常常会涉及到多张表,这在面向对象中就涉及到了对象与对象之间的关联关系. 针对多表之间的操作,MyBatis提供了关联映射,通过关联映射就可以很好的处理对象与对象之间的关联关系. 目录 你需要了解的知识点 1.关联关系种类 数据库: java 2.关联查询方式 使用 1.创建实体类 2.创建SQL映射的XML文件 3.注册SQL映射的XML文件 4.创建表格 5.测试一对一关联映射 你可能会出现的问题 问题一:提示缺少构造函数 写在最后 你需要了解的知识点 1.关联关系…
我们现在已经知道如何使用Code First来定义简单的领域类,并且如何使用DbContext类来执行数据库操作.现在我们来看下数据库理论中的多样性关系,我们会使用Code First来实现下面的几种关系: 1.一对一关系: one to one 2.一对多关系: one to many 3.多对多关系::many to many 首先要明确关系的概念.关系就是定义两个或多个对象之间是如何关联的.它是由关系两端的多样性值识别的,比如,一对多意味着在关系的一端,只有一个实体,我们有时称为父母:在关…