C#-WebApi-EF-CodeFirst-构建迁移命令说明

#环境要求

  • Install-Package EntityFramework 必备

PS: MYSQL和ORACLE等需要安装对应的数据库Nuget包

 

#构建迁移配置

Enable-Migrations

参数列表

  • -Auto 在为项目启用自动迁移的情况下构建迁移配置
  • -ContextTypeName MyContext -迁移目录目录名 为具有多个上下文的项目构建迁移配置
  • -EnableAutomaticMigrations 启用自动迁移

public Configuration() { AutomaticMigrationsEnabled = false; // 是否开启自动迁移 }

 

#添加迁移记录

Add-Migration 迁移名称

参数列表

  • -IgnoreChanges 构建空迁移,忽略当前模型中检测到的任何挂起的更改。这可以用来创建初始的、空的迁移,以便为现有的迁移启用迁移。
  • -Force 现有迁移名 指定重新构建现有迁移。
  • -ProjectName 指定包含迁移配置类型的项目使用。如果省略,则在包管理器控制台中选择的默认项目。
  • -StartUpProjectName 指定要用于命名连接字符串的配置文件。如果省略,将使用指定项目的配置文件。
  • -ConfigurationTypeName 指定要使用的迁移配置。如果忽略,迁移将尝试在目标中定位单个迁移配置类型项目。
  • -ConnectionString 指定要使用的连接字符串,如果忽略使用默认。
  • -ConnectionProviderName 指定连接字符串的提供程序固定名称。
  • -AppDomainBaseDirectory 指定用于运行迁移的应用程序域的目录。

 

#同步到数据库

Update-Database

参数列表

  • -TargetMigration 迁移名称 同步数据库到指定迁移版本
  • -Script 生成脚本以将数据库从当前状态更新到最新的迁移
  • -Script -SourceMigration 迁移A-TargetMigration 迁移B 将名为“A”的迁移到名为“B”的指定目标
  • -Script -SourceMigration $InitialDatabase 生成一个脚本,该脚本可以将当前处于任何版本的数据库升级到最新版本
  • -TargetMigration $InitialDatabase 回滚已应用于数据库的任何迁移
  • -Verbose 查看所执行的SQL语句
  • -SourceMigration 指定要使用的特定迁移的名称作为更新的起点
  • -Force 指定自动迁移数据库
  • -ProjectName 指定包含迁移配置类型的项目
  • -StartUpProjectName 指定要用于命名连接字符串的配置文件
  • -ConfigurationTypeName 指定要使用的迁移配置
  • -ConnectionStringName 指定要从应用程序的配置文件
  • -ConnectionString 指定要使用的连接字符串
  • -ConnectionProviderName 指定连接字符串的提供程序固定名称

 

#遇到的问题

问题提示:enable-migrations failed to build.

问题报错:EF生成同步迁移报错

解决方法:重新生成解决方案解决

 

posted @ 2019-12-05 15:36  Magical-Conch  阅读(111)  评论(0编辑  收藏  举报