我刚刚开始研究如何使用 EF 迁移,但已经遇到了问题。让我们假设两个开发人员使用一个解决方案,但他们在不同的时区。
- Dev1 使用名称“201307151309449_7.cs”创建基于代码的迁移并提交它。
- Dev2 在另一个时区(-3 小时),他从源代码管理中获取最新版本。
- Dev2 执行“更新数据库”命令。在这一步中,Dev2 与 Dev1 具有相同的 DB 结构。
- Dev2 进行了一些更改并创建了名为“201307151010092_8.cs”的迁移。
带有“_7”前缀的迁移早于“_8”创建,但 Visual Studio 存储“201307151010092_8”迁移就像它是首先创建的一样。因此,基于代码的迁移 '201307151010092_8' 不会包含 Dev2 为自己所做的任何更改(方法 'Up' 和 'Down' 是空的,我不知道为什么会这样)。
有人可以向我解释如何在这种情况下(不同时区)使用 EF 迁移吗?