01. 启用迁移

【在控制台中,输入以下命令:】
enable-migrations  //命令将在项目中创建一个迁移文件夹。同时文件夹中包含一个Configuration.cs文件,你可以编辑该文件来配置迁移。

【Seed方法有两种途径可以去实现】
1、在启用迁移生成的Configuration.cs文件中Configuration类包含Seed方法
2、也可以单独定义Seed方法,放置在DAL文件夹中并在web.config完成配置

02. 执行第一次迁移

【在控制台中,输入以下命令:】
add-migration InitialCreate

当您执行add-migration命令时,迁移将生成代码用来创建数据库。该代码同样在Migrations文件夹中,在文件名为<时间戳>_InitalCreate.cs的文件中(该文件看上去像这样201510030852597_InitialCreate.cs)。该类中的Up方法将按照数据模型实体集来创建数据库表格,Down方法用来删除它们。

迁移调用Up方法来实现数据模型所做的更改。当你输入一个命令回滚更新,迁移将调用Down方法。

这是您输入add-migration InitialCreate命令时创建的初始迁移。参数(在该示例中是InitialCreate)用于文件的名称,当然也可以是任意你想要的其他名称。 通常你会选择一个单词或短语来总结迁移中所做的改变。例如您可以能会命名之后的迁移为"AddDeparmentTable"。

如果你创建了一个在数据库已经存在的情况下的迁移,则生成的的数据库创建代码不会运行。因为数据库已经和数据模型匹配。将应用程序部署到另一个尚未创建数 据库的环境时,代码才会运行以创建数据库。所以最好是提前测试一下。这就是为什么之前你更改了连接字符串中数据库的名称,以便迁移可以从零开始创建一个新 的数据库。

【在控制台中,输入以下命令:】
update-database

我们使用update-database命令运行Up方法来创建数据库,然后运行Seed方法来填充数据库。
同样的过程会在将程序部署到生产环境下发生。

  

MVC程序中实体框架的Code First迁移和部署的更多相关文章

  1. 用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的Code First迁移和部署

    用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的Code First迁移和部署 这是微软官方SignalR 2.0教程Getting Started with En ...

  2. [渣译文] 使用 MVC 5 的 EF6 Code First 入门 系列:MVC程序中实体框架的连接恢复和命令拦截

    这是微软官方教程Getting Started with Entity Framework 6 Code First using MVC 5 系列的翻译,这里是第四篇:MVC程序中实体框架的连接恢复和 ...

  3. MVC程序中实体框架的连接恢复和命令拦截

    MVC程序中实体框架的连接恢复和命令拦截 这是微软官方SignalR 2.0教程Getting Started with Entity Framework 6 Code First using MVC ...

  4. asp.net EF6.0中出现未找到具有固定名称“System.Data.SqlClient”的 ADO.NET提供程序的实体框架提供程序解决办法

    出现的错误信息如下所示: 指定的架构无效.错误:  DataModel.ssdl(2,2) : 错误 0152: 未找到具有固定名称“System.Data.SqlClient”的 ADO.NET 提 ...

  5. 关于使用Entity Framework时遇到的问题 未找到具有固定名称“System.Data.SqlClient”的 ADO.NET 提供程序的实体框架提供程序。请确保在应用程序配置文件的“entityFramework”节中注册了该提供程序

    问题描述: 使用Entity Framework获取数据时报以下错误: 未找到具有固定名称“System.Data.SqlClient”的 ADO.NET 提供程序的实体框架提供程序.请确保在应用程序 ...

  6. 未找到具有固定名称“System.Data.SQLite”的 ADO.NET 提供程序的实体框架提供程序

    用户代码未处理 System.InvalidOperationException   HResult=-2146233079   Message=未找到具有固定名称"System.Data. ...

  7. 在Asp.net Razor Pages/MVC程序中集成Blazor

    今天试了一下在Asp.net core Razor Pages/MVC程序中集成Blazor(Server-side),还是可以完美整合的,这里以Razor Pages为例(.net core 3.1 ...

  8. Spring MVC程序中得到静态资源文件css,js,图片文件的路径问题总结

    上一篇 | 下一篇 Spring MVC程序中得到静态资源文件css,js,图片 文件的路径 问题总结 作者:轻舞肥羊 日期:2012-11-26 http://www.blogjava.net/fi ...

  9. asp.net mvc核心、实体框架和simplepagin .js中的分页

    下载demo - 516.1 KB , 介绍 这篇文章将解释如何在asp.net mvc核心应用程序中进行分页,目标是enity框架,并使用jquery模板simplepagin .js. 我的一个应 ...

随机推荐

  1. Node.js 学习笔记

    时间:2016-07-07 提前安装好linux CentOs环境,以及相关工具(git,wget,vim……) 1.安装: 目前打算在CentOs上进行操作,网上有教程是旧的地址,这个是搬家后的新地 ...

  2. UIBUTTON titlelabel.text 不显示

    button.titlelabel.text=@"查询";设置后运行发现没事正确显示. 查找后原来UIButton分状态的,textLabel不管用 [button setTitl ...

  3. CentOS7下Apache及Tomcat开启SSL

    安装: 复制代码 yum install -y openssl #使用openssl可手动创建证书 yum install -y httpd yum install -y mod_ssl 防火墙打开8 ...

  4. Drawable和Bitmap区别

    Bitmap - 称作位图,一般位图的文件格式后缀为bmp,当然编码器也有很多如RGB565.RGB888.作为一种逐像素的显示对象执行效率高,但是缺点也很明显存储效率低.我们理解为一种存储对象比较好 ...

  5. Js动态获取iframe子页面的高度////////////////////////zzzz

    Js动态获取iframe子页面的高度   Js动态获取iframe子页面的高度总结 问题的缘由 产品有个评论列表引用的是个iframe,高度不固定于是引发这个总结. 方法1:父级页面获取子级页面的高度 ...

  6. [Asp.net]Uploadify上传大文件,Http error 404 解决方案

    引言 之前使用Uploadify做了一个上传图片并预览的功能,今天在项目中,要使用该插件上传大文件.之前弄过上传图片的demo,就使用该demo进行测试.可以查看我的这篇文章:[Asp.net]Upl ...

  7. viewport设置

    <meta name="viewport" content="width=device-width, initial-scale=1.0,user-scalable ...

  8. Firebug 学习使用教程

    Firebug是Firefox下的一个扩展,能够调试所有网站语言,如Html.Css等,但FireBug最吸引人的就是JavaScript调试功能,除此之外,还有对Dom的查看与调试,网站整体分析等其 ...

  9. 2015/10 中外合璧再现辉煌—CCFC2015技术峰会

    笔者有幸参加了CCFC技术峰会,现在发布照片几张.大家看一下. 2015年10月14日,CCFC 2015电子数据取证技术峰会于四川成都举办,有200余名一线取证技术人员及国内外各行业专家参会.此次峰 ...

  10. JavaScript中const、var和let区别浅析

    在JavaScript中有三种声明变量的方式:var.let.const.下文给大家介绍js中三种定义变量的方式const, var, let的区别. 1.const定义的变量不可以修改,而且必须初始 ...