MigrateDatabaseToLatestVersion
全部标签 我需要帮助来阐明EFCodeFirstMigrations如何在生产机器上运行。我有一些实体类和DbContext派生类来访问实体。现在,我想执行以下几项操作:当我的应用程序启动时,它必须创建数据库,如果数据库不存在的话;然后必须根据模型调整数据库架构;如果刚才创建了数据库,我想创建一些索引;另外,如果数据库是刚刚创建的,它必须由一些初始数据作为种子;所有这些事情都必须自动执行,无需任何NUGET命令或外部工具。我读过一些关于迁移的文章,但它们主要关注运行时的NUGET使用或纯自动数据库更新(通过MigrateDatabaseToLatestVersion)。我知道DbMigratio
在我的项目中尝试实现EF迁移时,我被困在一个地方。EFCodeFirstMigrateDatabaseToLatestVersion接受来自配置的连接字符串名称。在我的例子中,数据库名称在运行时已知(用户从下拉列表中选择它)。正如DbContext在其构造函数中接受ConnectionString或connectionStringName的方式,“MigrateDatabaseToLatestVersion”不接受相同的System.Data.Entity.Database.SetInitializer(newMigrateDatabaseToLatestVersion(connStr