我们从手动编码数据库迁移转向代码优先的实体框架迁移。在我们的旧设置中,我们能够检查数据库是否太新。这很重要,因为它可能不兼容。不幸的是,我找不到一个好的方法来检查当前数据库的最新程度或是否太旧。
用例是客户的计算机上有我们软件的 2 个版本。客户端首先启动最新版本,该版本包含比旧版本更新的迁移。之后,客户端启动旧版本的软件。目前该软件会因为型号不兼容而崩溃并烧毁。
您可以使用
DbMigrator.GetPendingMigrations
检查数据库是否同步
您可以使用
DbMigrator.GetDatabaseMigrations
检查目标数据库已应用哪些迁移。
然后根据需要运行挂起的迁移:
var configuration = new Configuration();
var migrator = new DbMigrator(configuration);
migrator.Update();
http://romiller.com/2012/02/09/running-scripting-migrations-from-code/ http://romiller.com/2012/02/09/running-scripting-migrations-from-code/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)