随笔分类 - Entity Framework
摘要:怎样从一个已存在的数据库中映射表到 entity 实体? Entity Framework 提供了一个简便方法,可以为已存在的数据库里的所有表和视图创建实体类(entity class),并且可以用 DataAnnotation 特性和 Fluent API 来配置。 首先,右键你的 Visual
阅读全文
摘要:配置Many-to-Many(多对多)关系: 这里有两个类,Student和Course,一个Student可以有多个Course,一个Course也可以有多个Student,所以这就成了多对多关系。更多信息请访问Entity Relationship。 进入正题: 1.使用DataAnnotati
阅读全文
摘要:一对多(One-to-Many)关系: 下面,我们来介绍Code-First的一对多关系,比如,在一个Standard(年级)类中包含多个Student类。 如果想了解更多关于one-to-one,one-to-many,many-to-many关系的信息,请访问Entity Relationshi
阅读全文
摘要:配置一对一(One-to-One)关系: 两个实体中,如果一个实体的一个实例与另一个实体相关,则我们就叫做一对一关系 查看如下代码: 这里,Student类只能拥有零个或最多一个StudentAddress类,所以符合一对一关系 在SQL Server数据库中,一对一关系发生在当一张表的主键是另一张
阅读全文
摘要:Fluent API配置: 前面我们已经了解到使用DataAnotations特性来覆写Code-First默认约定,现在我们来学习Fluent API。 Fluent API是另一种配置领域类的方法,它比DataAnnotations特性提供更多的配置方法,下表是Fluent API支持的类型映射
阅读全文
摘要:EF Code-First提供了一个可以用在领域类或其属性上的DataAnnotation特性集合,DataAnnotation特性会覆盖默认的EF约定。 DataAnnotation存在于两个命名空间里: System.ComponentModel.DataAnnotations和System.C
阅读全文
摘要:前言:在前篇中,总是把领域类(Domain Class)翻译成模型类,因为我的理解它就是一个现实对象的抽象模型,不知道对不对。以防止将来可能的歧义,这篇开始还是直接对Domain Class直译。 前面我们学习了默认Code-First约定,Code-First使用默认约定根据领域类构建概念模型,C
阅读全文
摘要:在前篇CodeFirst类型约定中,我们在数据库中为每一个模型类创建一个表,但是有个问题,我们可以设计出带继承关系的模型类,即面向对象编程既有“has a”(表示类继承)也有“is a”(表示类包含)关系,但是SQL的基础关系模型在表与表中仅支持"has a"关系,SQL数据库管理系统不支持继承类型
阅读全文
摘要:现在我们来学习,当数据库初始化的时候,Code First怎样设置数据库的名字。 下面的图显示了数据库初始化的工作流程,根据传入给context基类的构造函数的参数来初始化: 根据上面的图,context基类的构造函数可以传入如下参数: 无参数的构造函数: 如果不传参数给context基类的构造函数
阅读全文
摘要:Code First 约定 Code First 约定 在前一篇中,我们已经知道了EF Code-First怎样从模型类(domain classes)中创建数据库表,下面,我们开始学习默认的Code-First约定。 什么是约定? 约定就是在Code-First模式中自动配置模型类的默认规则,Co
阅读全文
摘要:前言:学习了EF框架这么久,还没有好好总结一番,正好遇到一国外的网站,发现不错,随即翻译过来,一是让自己复习一遍,二是供广大初学者学习,翻译过程中加入了一些自己的理解,如有错误,还请指出,多谢多谢。好了,进入正题 EF框架有三种设计模式:Code-First、Model-First、Database
阅读全文

浙公网安备 33010602011771号