我有以下内容。
映射到SQLSERVER数据库的实体框架模型。它具有生产数据,但是没有__MigrationHistory表。我需要保留数据。
新的更新模型,包括新表,列等。
我想添加迁移,以便可以轻松管理模型更改。我想通过创建所有默认表来支持MigrateDatabaseToLatestVersion
,并且能够在当前数据结构上应用迁移#2补丁。
我遵循了Microsoft的教程“ 使用现有数据库进行代码优先迁移”,但这给了我最初-ignoreChanges
的问题,导致无法从头开始创建模型。我需要既可以重新创建它,又可以在没有迁移历史记录的情况下在现有数据库上添加迁移。这是因为初始迁移时的-ignoreChanges
给了我一个空的up()
,而第二个迁移脚本将仅包含修补表/列的代码。如果我不忽略更改,那么框架将尝试创建已经存在的表。
我当时正在考虑不要忽略初始迁移的更改,然后对所有现有表进行某种"CREATE TABLE IF NOT EXISTS"
的操作,但这似乎是不可能的。
我敢打赌,我在公开场合遗漏了一些东西。什么事?
答案 0 :(得分:1)
未经测试,但应该可以:
首先在测试环境中做所有事情!