【发布时间】:2017-04-03 23:54:30
【问题描述】:
我首先使用 Entity Framework 6.1.3 数据迁移和代码。 我正在重置迁移。我已经删除了迁移历史表并创建了数据库当前状态的新基线快照。使用以下初始化程序在新安装时一切正常:
Database.SetInitializer(new MigrateDatabaseToLatestVersion<T>, Migrations.Configuration>(true));
但是,应该如何将此重置部署给拥有现有数据库的客户?当我有一个现有数据库并出现错误时,这会在本地失败: 数据库中已经有一个名为“*****”的对象。
在需要重置迁移和同步现有数据库的架构时,是否有人有更好的方法?
【问题讨论】:
-
嗯,根据部署和更改的数量,您可以使用您的基线脚本,然后注释掉每个脚本中存在的内容。可能很乏味,因为您需要比较列、键、索引等。您还可以使用存在性检查来封闭每个数据库对象(如果不存在数据库对象,则创建它)。
标签: entity-framework entity-framework-migrations