EF CodeFirst下的自动迁移
当我们修改数据模型,添加一个如下字段
再次运行程序,会因为数据库结构与模型不一致而报错
为解决以上错误可以采取以下三种方式
1、 删除数据库,重新运行站点,会重新生成数据库,这样就会丢失数据
2、 手动在数据库中修改表结构,使其与模型一致
3、 使用如下教程所示的EF的数据迁移【Code First Migrations】
在NuGet程序包管理器中执行如下命令启用EF的数据迁移
此时会生成一下两个文件
其中【201504030707151_InitialCreate】是根据存在的数据库文件生成的,建表的代码,如下
【Configuration】是自动迁移的配置类,Seed方法中可以进行一些数据的初始化,如下
然后,我们继续在程序包管理器控制台执行以下命令,生成数据库改动相关的代码,Initial为自动将要生成的类的名称,可以自定义,但是要避免与其他类型重复,否则会报错
如下生成了一个【201504030712220_Initial】文件
查看代码可以看到我们添加了一个Description字段:
最后我们在程序包管理器的控制台中执行如下命令,将所有变动写入数据库
此时,再次运行站点,可以发现网站已经可以正常访问,Description字段已经成功添加进数据库中。
转载于:https://www.cnblogs.com/mstmdev/p/5471269.html
EF CodeFirst下的自动迁移相关推荐
- EF CodeFirst下,当实体结构发生修改怎么更新数据库结构
在使用EF的实际编程中我们经常遇到这样的问题:发现实体结构需要新增加一个字段,或者减少一个字段,急需把实体结构修改,并让数据库更新这种修改.在用Model First或者Database First的 ...
- EF CodeFirst 如何通过配置自动创建数据库当模型改变时
最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精 本篇为进阶篇,也是弥补自己之前没搞明白的地方,惭愧 ...
- 了解EF CodeFirst的Migrator功能与Migrator.Net对比
在上一篇[数据库迁移利器:Migrator.Net]中,很多朋友提到了EF的CodeFirst也有数据库的迁移功能,说来真惭愧,玩了那么多年,至今还未去了解EF,今天来了解下CodeFirst然后与M ...
- EF CodeFirst 必须要解决的问题
Entity Framework有三种模式:Model First.DB First和 CodeFirst,这里只谈CodeFirst.实际项目中如果采用了CodeFirst,那么必定会碰见下面这些问 ...
- 新年奉献MVC+EF(CodeFirst)+Easyui医药MIS系统
本人闲来无事就把以前用Asp.net做过的一个医药管理信息系统用mvc,ef ,easyui重新做了一下,业务逻辑简化了许多,旨在加深对mvc,ef(codefirst),easyui,AutoMap ...
- MVC3教程之实体模型和EF CodeFirst
在本节中,我们将使用Entity Framework 数据访问技术来定义这些模型类,并对这些类来进行操作.EF支持一个被称之为"code-first"的开发范例.Code-firs ...
- Thorntail 2.2.0提供从WildFly Swarm自动迁移的特性
自6月底宣布把WildFly Swarm2018.5.0改名为Thorntail2.0.0以来,Red Hat在8月中旬以后的三个周里发布了Thorntail 2.1.0版本和2.2.0版本.除了许多 ...
- kubernetes要实现的目标——随机关掉一台机器,看你的服务能否正常;减少的应用实例能否自动迁移并恢复到其他节点;服务能否随着流量进行自动伸缩...
Kubernetes 是来自 Google 云平台的开源容器集群管理系统.基于 Docker 构建一个容器的调度服务.该系统可以自动在一个容器集群中选择一个工作容器供使用.其核心概念是 Contain ...
- 不同场景下MySQL的迁移方案
文章目录 不同场景下MySQL的迁移方案 一 .为什么要迁移 生产环境中,有以下情况需要做迁移工作,如下: 二.MySQL 迁移方案概览 三.MySQL 迁移实战 3.1. 场景一:一主一从结构迁移从 ...
最新文章
- LeetCode简单题之最长和谐子序列
- squid,nginx,lighttpd反向代理的区别
- 怎么改变github的用户名字,身份?
- angular6的响应式表单
- C语言实用算法系列之学生管理系统_单向链表外排序_堆内数组存储链表节点指针_函数指针+switch
- 用python怎么下载_如何使用python下载视频
- 项目“”受源代码管理,向源代码管理注册此项目时出错。。
- Python快速获取已知城市坐标的距离矩阵
- 电容或电感的电压_电容与电感的对偶性小结
- mysql查询时间监控_监控长时间运行的查询(监控数据库性能的SQL )
- WYSE POCKETCLOUD手把手教你如何用手机遥控你的电脑!!(转)
- 你离运营只差一个打卡签到功能 早晚安打卡 小来早晚安打卡 功能一样 是一个唯一用户主动去分享的功能
- 计算机英语派生词和复合词,英语派生词归纳
- H3C设备网吧万兆光模块解决方案
- 使用idea解决包依赖冲突的问题SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory
- Stochastic Variance Reduced Ensemble Adversarial Attack for Boosting the Adversarial Transferability
- 【CSS】常见选择器用法
- js原生写图片轮播和切换
- (语法糖)ES6类class声明类的方式 -ES5类声明继承
- 深入浅出IOC和DI---学习记录
热门文章
- 主机消息服务器在哪找,怎么找电脑服务器主机地址吗
- eclipse调试java web_eclipse调试web项目
- 高中会考access数据库_高中信息技术ACCESS数据库上机操作复习课教案
- 海南计算机考研和培训哪个比较好,海南考研集训营前十排名
- python中avg函数的使用_SQL AVG()
- C语言学习笔记---fgets()函数和fputs()函数
- iptraf:一个实用的TCP/UDP网络监控工具
- 淘宝开源Key/Value结构数据存储系统Tair技术剖析
- pytorch手动安装开发包
- Spring Cloud F Spring Boot 2.0 版本升级说明书