asp.net mvc poco代码优先 数据迁移及修改(模型实体与数据库之间更新)

输入命令 Enable-Migrations 回车,为Core启用数据迁移。


打开Configuration.cs文件


image


,将 AutomaticMigrationsEnabled = false;改为 AutomaticMigrationsEnabled = ture;来启用自动迁移。


image


2)、更新数据表


运行命令Update-Database。提示错误:There is already an object named 'Administrators' in the database.


这是因为先生成了Administrators表后启用的数据迁移。在更新表的时候视图创建Administrators表失败。


Add-Migration 将根据自创建上次迁移以来您对模型所做的更改,为下一次迁移搭建基架。
Update-Database 将所有挂起的迁移应用于数据库。


生成并运行迁移
Code First 迁移有两个主命令,下面您将会熟悉它们。


Add-Migration 将根据自创建上次迁移以来您对模型所做的更改,为下一次迁移搭建基架。
Update-Database 将所有挂起的迁移应用于数据库。
我们需要为迁移搭建基架以处理先前添加的新 Url 属性。使用 Add-Migration 命令可以为这些迁移指定名称,我们将其称为 AddBlogUrl。


在程序包管理器控制台中运行 Add-Migration AddBlogUrl 命令。
在 Migrations 文件夹中,现在有了新的 AddBlogUrl 迁移。该迁移文件名以时间戳作为前缀,这对于排序十分有帮助。
namespace MigrationsDemo.Migrations 

    using System; 
    using System.Data.Entity.Migrations; 
     
    public partial class AddBlogUrl : DbMigration 
    { 
        public override void Up() 
        { 
            AddColumn("Blogs", "Url", c => c.String()); 
        } 
         
        public override void Down() 
        { 
            DropColumn("Blogs", "Url"); 
        } 
    } 
}
现在,我们可以编辑此迁移或向其添加内容,一切都很不错。让我们使用 Update-Database 将此迁移应用于数据库。


在程序包管理器控制台中运行 Update-Database 命令。
Code First 迁移将对 Migrations 文件夹中的迁移与已应用于数据库的迁移进行比较。它将了解到需要应用 AddBlogUrl 迁移,于是便运行该迁移。
此时,MigrationsDemo.BlogContext 数据库已进行了更新,其 Blogs 表中包含了 Url 列。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值