EF Code First迁移多个数据库
本文关键字:数据库 迁移 Code First EF | 更新日期: 2023-09-27 18:18:01
我已经使用基于此解决方案的EF 6 Code First MVC 5原型化了一个项目:
EF Code首先动态创建多个数据库
现在我想知道迁移如何与多个数据库一起工作?
这是否意味着我将需要为我拥有的每个数据库运行Add-Migration MigrationsName ?
您刚刚确认所有数据库需要同时升级,那么您只需要使用一个数据库来添加迁移,然后将其更新到所有数据库。
可以根据配置中的连接字符串名称指定连接字符串名称参数。
<connectionStrings>
<add name="CompanyABC"
connectionString="Data Source=.; Initial Catalog=CompanyABC; Integrated Security = true;"
providerName="System.Data.SqlClient" />
<add name="CompanyDEF"
connectionString="Data Source=.; Initial Catalog=CompanyDEF; Integrated Security = true;"
providerName="System.Data.SqlClient" />
<add name="CompanyXYZ"
connectionString="Data Source=.; Initial Catalog=CompanyXYZ; Integrated Security = true;"
providerName="System.Data.SqlClient" />
</connectionStrings>
PM> Enable-Migrations -ConnectionStringName CompanyABC
PM> Add-Migration UpgradeToVersionX -ConnectionStringName CompanyABC
PM> Update-Database -ConnectionStringName CompanyABC
PM> Update-Database -ConnectionStringName CompanyDEF
PM> Update-Database -ConnectionStringName CompanyXYZ
运行时运行迁移
Database.SetInitializer<AppContext>(
new MigrateDatabaseToLatestVersion<AppContext, Configuration>());