asp.net – 从EF 6 Code First迁移和多个配置生成完整的SQL脚本

我正在尝试生成一个完整的sql脚本来首次部署我的应用程序.我知道包管理器控制台中的这个命令应该创建一个完整的sql脚本(参见 this SO question)

Update-Database -Script -SourceMigration:0

我还读过$InitialDatabase应该用于源迁移而不是’0′.

但是,我的迁移文件夹中有两个配置.我正在使用以下语法:

Update-Database -Script -SourceMigration:0 -ConfigurationTypeName MyConfig

我正在为我的所有配置找回一个空脚本.

请注意,我已启用自动迁移,并且未向其添加任何显式迁移.

解决方法

在同一命名空间中具有两个迁移配置是不受支持的方案.最近我们以“按设计”关闭a bug similar to this.解决方法是将迁移配置放在不同的命名空间中.

解决此问题的最可靠方法是将配置放在不同的文件夹中并使用MigrationsDirectory变量,如下所示,然后为配置生成的任何显式迁移都应放在同一文件夹中

internal sealed class Configuration : DbMigrationsConfiguration<TestMultipleMigrationsScript.BlogContext>
{
    public Configuration()
    {
        AutomaticMigrationsEnabled = false;
        MigrationsDirectory = @"directory";
    }

}

相关文章

### 创建一个gRPC服务项目(grpc服务端)和一个 webapi项目(...
一、SiganlR 使用的协议类型 1.websocket即时通讯协议 2.Ser...
.Net 6 WebApi 项目 在Linux系统上 打包成Docker镜像,发布为...
一、 PD简介PowerDesigner 是一个集所有现代建模技术于一身的...
一、存储过程 存储过程就像数据库中运行的方法(函数) 优点:...
一、Ueditor的下载 1、百度编辑器下载地址:http://ueditor....