我使用带有显式迁移的 EF 4.3。在我的本地开发数据库上定义新迁移并调用 Update-Database 时,一切正常,只有未应用的迁移应用于数据库。
但是当我尝试迁移另一个数据库(在迁移之前与我的开发数据库处于相同状态)时
Update-Database -ConnectionStringName=MyProdConnectionStringName
似乎数据库状态和现有的 __MigrationHistory 表被忽略,并且 ef 将所有迁移应用到我的 prod db,这导致失败,因为那里已经有一些表。
也许它与知道相关,我为我的表使用了自定义模式[Table("TabName", Schema = "stepid")]
。__MigrationHistory 表具有数据库的默认架构(我的开发机器上的 dbo 和我的 prod 环境上的项目)。