【发布时间】:2015-09-27 08:08:48
【问题描述】:
EF7 migration add 命令(迄今为止,beta5)将DbContext 中定义的模型类与当前模型快照进行比较,创建新的迁移类并更新模型快照。
我需要修改迁移以使其生成不同的 DDL SQL。例如,EF7 使用 SQL Server 自动增量值的序列,我希望它使用标识。不过也可能是其他原因。 migration remove 命令会物理删除迁移文件并恢复模型快照,因此在这种情况下它是无用的。
有 3 个文件包含看起来需要编辑的相关代码:
- 主要迁移类:
Up和Down方法应该被修改。 -
DbContextModelSnapshot文件包含需要修改的注释 - 次要迁移部分类:名称错误的
[migration].Designer.cs文件还包含迁移的模型快照。我假设此快照需要与第 2 项中的模型快照匹配,但不确定。关于其用途的唯一信息来自Brice's blog ,上面写着“如果您或提供商需要在迁移期间检查模型以获取更多信息,它就在那里。”
具体问题:
- 两个模型快照是否需要保持同步才能正确执行迁移?
- 修改 3 个单独的文件是编辑迁移的唯一方法吗? (尽管根据更改,模型快照在某些情况下可能不必触及。)
- 是否有一些 EF 命令可以仅重新生成模型快照,而不是迁移方法?
【问题讨论】:
标签: entity-framework-migrations entity-framework-core