1.什么是Code First(EF Code First 系列)
EF4.1中开始支持Code First 。这种方式在领域设计模式中非常有用。使用Code First模式,你可以专注于领域设计,根据需要,为你一个领域的对象创建类集合,而不是首先来设计数据库,然后来根据数据库设计你的类,Code-First APis将会基于你的类和配置,为你创建数据库。
作为一个开发者,你首先写的是C#或者VB.NET类和上下文类,当你运行程序的时候,Code-First ApIs将会创建数据库(如果这个数据库不存在的话),然后使用默认的约定,将你的类映射到数据库中。你当然可以来配置你的领域类,来重写默认的约定,来映射数据库,这里你可以使用数据注解特性和Fluent API。
这个基本的工作流是:
首先写好领域类和上下文类--->为领域类额外配置映射条件----->点击F5运行程序---->Code--First APIs创建新的数据库,或者将领域类和已经存在的数据库进行映射---->设置添加测试的数据到数据库中---->最后运行程序。
后面一节我们看看一个简单的额Code-First例子吧。
附上系列目录:
- 1.什么是Code First(EF Code First 系列)
- 2.简单的Code First例子(EF Code-First系列)
- 3.Code-First 约定
- 4.DB Initialization(数据库初始化)
- 5.Inheritance Strategy(继承策略)
- 6.Configure Domain Classes(配置领域类)
- 7.DataAnnotations(数据注解)
- 7.1数据注解属性--Key【Code-First系列】
- 7.2 数据注解属性--TimeStamp特性【Code-First 系列】
- 7.3 数据注解特性之ConcurrencyCheck特性【Code-First系列】
- 7.4 数据注解属性--Required
- 7.5 数据注解特性--MaxLength&&MinLength
- 7.6 数据注解特性--StringLength
- 7.7 数据注解特性--Table
- 7.8 数据注解特性--Column
- 7.9 数据注解特性--ForeignKey
- 7.10 数据注解特性--NotMapped
- 7.11 数据注解特性--InverseProperty
- 8.Fluent API
- 8.1 EntityTypeConfiguration Class in Code-First【Code First系列】
- 8.2 使用Fluent API进行实体映射【Code-First系列】
- 8.3 使用Fluent API进行属性映射【Code-First系列】
- 9.Configure One-to-One(配置一对一关系)
- 10.Configure One-to-Many(配置一对多关系)
- 11.Configure Many-to-Many(配置多对多关系)
- 12.Code-First from an Existing Database:
- 13.Cascade Delete in Entity Framework Code-First:
- 14.Move Configurations to Separate Class in Code-First:
- 15.DB Initialization Strategy(数据库初始化策略)
- 16.Turn off DB Initializer in Code-First:
- 17.Seed Database in Code-First:
- 18.Migration in Code-First:
- 19.Automated Migration:
- 20.Code-based Migration:
- 21.Entity Framework Power Tools:
1.什么是Code First(EF Code First 系列)的更多相关文章
- EF Code First学习系列
EF Model First在实际工作中基本用不到,前段时间学了一下,大概的了解一下.现在开始学习Code First这种方式.这也是在实际工作中用到最多的方式. 下面先给出一些目录: 1.什么是Co ...
- EF和MVC系列文章导航:EF Code First、DbContext、MVC
对于之前一直使用webForm服务器控件.手写ado.net操作数据库的同学,突然来了EF和MVC,好多新概念泉涌而出,的确犹如当头一棒不知所措.本系列文章可以帮助新手入门并熟练使用EF和MVC,有了 ...
- EF Code First学习笔记
EF Code First学习笔记 初识Code First EF Code First 学习笔记:约定配置 Entity Framework 复杂类型 Entity Framework 数据生成选项 ...
- EF Code First、DbContext
EF Code First.DbContext 对于之前一直使用webForm服务器控件.手写ado.net操作数据库的同学,突然来了EF和MVC,好多新概念一下泉涌而出,犹如当头一棒,的确有点不知所 ...
- EF Code First Migrations数据库迁移
1.EF Code First创建数据库 新建控制台应用程序Portal,通过程序包管理器控制台添加EntityFramework. 在程序包管理器控制台中执行以下语句,安装EntityFramewo ...
- EF Code First 初体验
Code First 顾名思义就是先代码,再由代码生成数据库的开发方式. 废话不多说,直接来一发看看:在VS2010里新建一个空白解决方案,再依次添加两个类库项目:Model.DataAccess和一 ...
- 【极力分享】[C#/.NET]Entity Framework(EF) Code First 多对多关系的实体增,删,改,查操作全程详细示例【转载自https://segmentfault.com/a/1190000004152660】
[C#/.NET]Entity Framework(EF) Code First 多对多关系的实体增,删,改,查操作全程详细示例 本文我们来学习一下在Entity Framework中使用Cont ...
- EF Code First 主键对应多个外键
这是一位朋友提出的疑问,EF 映射主键可以对应多个外键吗?如果外键设置级联删除会发生什么情况?下面做一个测试,示例实体代码: public class Blog { public Blog() { P ...
- 【记录】EF Code First 实体关联,如何添加、修改实体?
在使用 EF Code First 的时候,我们经常会对项目中的 Entry 进行一对多.多对多的映射配置,这时候就会产生主实体和子实体的概念,我们在添加.修改他们的时候,有时候会产生一些问题,比如添 ...
随机推荐
- ASP.NET Core Linux下为 dotnet 创建守护进程(必备知识)
前言 在上篇文章中介绍了如何在 Docker 容器中部署我们的 asp.net core 应用程序,本篇主要是怎么样为我们在 Linux 或者 macOs 中部署的 dotnet 程序创建一个守护进程 ...
- 在.NET Core中遭遇循环依赖问题"A circular dependency was detected"
今天在将一个项目迁移至ASP.NET Core的过程中遭遇一个循环依赖问题,错误信息如下: A circular dependency was detected for the service of ...
- 【安装PHP】如何在openSUSE42.1下编译安装PHP7
首先推荐一篇文章PHP 7 Release Date Arrived: Will Developers Adopt PHP 7? - PHP Classes blog. 里面说到是否会去使用PHP7, ...
- Net作业调度(五)—quartz.net动态添加job设计
介绍 在实际项目使用中quartz.net中,都希望有一个管理界面可以动态添加job,而避免每次都要上线发布. 也看到有园子的同学问过.这里就介绍下实现动态添加job的几种方式, 也是二次开发的核心模 ...
- Javascript本质第二篇:执行上下文
在上一篇文章<Javascript本质第一篇:核心概念>中,对Javascript执行上下文做了解释,但是这些都是基于Javascript标准中对执行上下文的定义,也就是说理论上的东西,本 ...
- ajax的post方式和get方式比较,以及需要注意的地方
说明:测试所用的js框架为kissy,后端语言为php 写在前面 目前我们可以将ajax请求的情形按照不同的类型进行分类,比如页面编码:utf-8 or gbk; ajax 传参方式 post or ...
- shell日常案例(一)
序 在linux平台下开发,我们经常会接触到一些任务性质的工作,而处理方式多样化.现积累各个案例. 清理近7天的数据 日志文件越来越大,我们需要及时的去做清理工作.配合工具:find, ...
- C#中,使用正式表达式匹配获取所需数据
.NET中,使用正式表达式匹配获取所需数据 需求:获取一串字符串中,正则匹配出需要的数据. 例如以下字符串: string temp ="ErrorCode:-1,Message:{&quo ...
- 每天一个linux命令(49):at命令
在windows系统中,windows提供了计划任务这一功能,在控制面板 -> 性能与维护 -> 任务计划, 它的功能就是安排自动运行的任务. 通过'添加任务计划'的一步步引导,则可建立一 ...
- 一篇通俗易懂的CSS层叠顺序与层叠上下文研究
网上有很多这方面的教程,但不是苦涩难懂就是从哪copy过来的,反正很长一段时间我是没看懂,时间长了也没打算去研究了,主要原因是,基本上很少会遇到那些问题(所以说啊,要是没有研究精神的才懒得管它).但自 ...