八:MVC初始化数据库
生成数据库策略:
CreateDatabaseIfNotExists:方法会在没有数据库时创建一个,这是默认行为。
DropCreateDatabaseIfModelChanges:如果我们在在模型改变时,自动重新创建一个新的数据库,就可以用这个方法。在这开发过程中非常有用。
DropCreateDatabaseAlways:如果你想在每次运行时都重新生成数据库就可以用这个方法。

数据库初始化 和上一篇创建项目差不多, 最主要的是在这里加上 Database.SetInitializer(new DropCreateDatabaseIfModelChanges<AmContext>());

假如说 要在初始化的时候添加一些数据
创建一个类,继承 DropCreateDatabaseIfModelChanges<AmContext>() --AmContext 数据库上下文类

重新方法 输入 override seed 就可以看见了
因为DropCreateDatabaseIfModelChanges<AmContext>() 的意思是数据模型发生改变,所以我们要改变数据模型
我重新在movie中添加一个qq的属性

由于我们 创建了一个类,来继承了DropCreateDatabaseIfModelChanges<AmContext>()
所以实例化这个类就行了

我们的数据库是这样的

运行 发现报错

我们把数据库展开的内容全部关闭

全部收缩,在运行一次
假如 还是报错的话 把焦点从数据库中一移开,或者刷新

显示出来了


数据库也更新了
在这里 要注意几点


外键也成功绑定
在这里 假如说 你创建的表面 不要 s

我在重新添加movie 一个属性 email ,让数据库模型发生改变

这就是 使数据库初始化,并且消除复数形式表名的方法,下一次我介绍mvc的主从表查询
八:MVC初始化数据库的更多相关文章
- 【EF6学习笔记】(一)Code First 方式生成数据库及初始化数据库实际操作
本篇参考原文地址: Creating an Entity Framework Data Model 说明:学习笔记参考原文中的流程,为了增加实际操作性,并能够深入理解,部分地方根据实际情况做了一些调整 ...
- EF6 学习笔记(一):Code First 方式生成数据库及初始化数据库实际操作
EF6 学习笔记总目录:ASP.NET MVC5 及 EF6 学习笔记 - (目录整理) 本篇参考原文地址: Creating an Entity Framework Data Model 说明:学习 ...
- 采用异步来实现重新连接服务器或者重新启动服务 C#中类的属性的获取 SignalR2简易数据看板演示 C#动态调用泛型类、泛型方法 asp .net core Get raw request. 从壹开始前后端分离[.NetCore 不定期更新] 38 ║自动初始化数据库
采用异步来实现重新连接服务器或者重新启动服务 开启异步监听,不会导致主线程的堵塞,在服务异常断开后一直检测重新连接服务,成功连接服务后通知各个注册的客户端! #region 检测断线并重连OPC服务 ...
- EF Core 初始化数据库的两种方法。
使用DbContextSeed初始化数据库 添加链接字符串 // This method gets called by the runtime. Use this method to add serv ...
- Entity FrameWork初始化数据库的四种策略
程序猿就是苦逼,每天还得分出一些时间去写博文.天真的很热,今天就随便写一点啦! 1.EF初始化数据库的四中策略 EF可以根据项目中的模型自动创建数据库.下面我们就分类看看Entity Framewor ...
- activiti搭建(一)初始化数据库
转载请注明源地址:http://www.cnblogs.com/lighten/p/5876681.html activiti-engine.jar包中自带了创建activiti工作流数据库表的SQL ...
- ASP.NET 5:初始化数据库
ASP.NET 5:初始化数据库 1.初始化数据库 1.2目录 这不是专述模式/架构设计的帖子,架构搭建以讲解文章为目的,先不过多分层. 截这个图也是便于你对应下面找代码文件路径! 1.2代码 先控制 ...
- ASP.NET没有魔法——ASP.NET MVC 与数据库大集合
ASP.NET没有魔法——ASP.NET与数据库 ASP.NET没有魔法——ASP.NET MVC 与数据库之MySQL ASP.NET没有魔法——ASP.NET MVC 与数据库之ORM ASP.N ...
- Activiti工作流搭建---初始化数据库
Activiti介绍 Activiti5是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理.工作流.服务协作等领域的一个开源的.灵活的.易扩展的可执 ...
随机推荐
- Jenkins+gitlab+maven持续集成
https://blog.csdn.net/tq08g2z/article/details/79718425 https://www.jianshu.com/p/3507d8b2ac87 报错用下面解 ...
- .Netcore 2.0 Ocelot Api网关教程(8)- 缓存
Ocelot中使用 CacheManager 来支持缓存,官方文档中强烈建议使用该包作为缓存工具.以下介绍通过使用CacheManager来实现Ocelot缓存. 1.通过Nuget添加 Ocelot ...
- C#中设置自定义控件工具箱图标
在设计自定义控件时,系统默认生成的图标比较单一难看,如何为控件设计自己的图标呢,这里给出了一种基于ToolBoxBitmap 属性设置自定义控件工具箱图标的方法. 1)首先将图标文件名改为自定义控件名 ...
- 《剑指offer》Q13-18 (牛客10.13)
目录 Q13 调整数组顺序使奇数位于偶数前 Q14 链表中倒数第k个结点 Q15 反转链表 Q16 合并两个有序链表 Q17 树的子结构 Q18 二叉树的镜像 Q13 调整数组顺序使奇数位于偶数前 输 ...
- vue项目中请求头为applicationx-www-form-urlencoded的参数传递
当请求接口的请求头如下图所示时, 前端在传参时需要先新建一个URLSearchParams对象,然后将参数append到这个对象中 const params = new URLSearchParams ...
- httpurlConnection客户端发送文件与服务端接受文件
import java.io.BufferedReader; import java.io.ByteArrayOutputStream; import java.io.DataInputStream; ...
- mac go环境的安装和卸载
背景: go环境的安装和卸载, 之前安装过go1.12, 现在项目需要,要安装go1.13. 所以要做的是先卸载, 然后在安装 本文介绍以下几个问题 1. go环境的卸载 2. go环境的安装 3. ...
- 生产环境中的 redis 是怎么部署的
redis cluster,10 台机器,5 台机器部署了 redis 主实例,另外 5 台机器部署了 redis 的从实例,每个主实例挂了一个从实例,5 个节点对外提供读写服务,每个节点的读写高峰q ...
- java学习(东软睿道)2019-09-06(预课)《随堂笔记》
2019-09-06 13:19:56 1.变量:java 名称 2.服务器server 客户端client uft8 ascll 3.Java ...
- Oracle的查询-多表查询中的一些概念
--笛卡尔积 select * from emp e,dept d; --等值连接 select * from emp e,dept d where e.deptno=d.deptno --内连接 s ...