1

我刚刚开始在几个不同的团队场景中测试迁移,以确保迁移在 git / 多个用户 / 多个分支上按预期工作。但是我马上就遇到了一个问题。在分支 1 上,我添加了初始迁移(在具有 165 个实体的现有项目上),删除 Up/Down 中的代码(仅使用模型快照),然后基于更新数据(创建 __MigrationHistory 表就好了)。我将它合并到分支 2(完全相同的模型 - 分支 1 的精确副本),使用我新合并的迁移运行 update-database,它显示无法更新数据库以匹配当前模型,因为有待处理的更改。没有待定的更改,两种模型完全相同。我在这里缺少什么吗?我想我应该只在迁移不正常时遇到这个问题(合并,

那么为什么我必须在分支 1 和分支 2 上都执行 add-migration Initial 呢?它们被合并并且完全相同。

注意:EF 5(技术上是 4.4)和 .NET 4.0。适用于 Oracle v 8.1.55.0 的 DevArt dotConnect

编辑:我读过这篇文章,但我不在不同的平台上,我在同一台电脑上——只是不同的分支。

4

1 回答 1

1

我想通了,在我从 EDMX 迁移到 dotConnect 代码优先 + 迁移的初始测试中,我将架构添加到 _Mapping 文件中以进行流畅的映射。我不得不删除这个架构。例子:

代替:

this.ToTable("ADDRESS", "SCHEMA");

我不得不使用:

this.ToTable("ADDRESS");

我也在 OnModelCreating 中使用这些选项:

var config = Devart.Data.Oracle.Entity.Configuration.OracleEntityProviderConfig.Instance;
config.Workarounds.IgnoreDboSchemaName = true;
config.Workarounds.IgnoreSchemaName = true;
于 2013-12-23T23:09:13.840 回答