实体框架代码优先编辑迁移

时间:2018-06-20 00:22:44

标签: entity-framework ef-code-first ef-migrations

我在Asp.Net Core Razor Pages项目中使用Entity Framework Code-First迁移。在某些情况下,在更新数据库之前,我已经编辑了迁移文件。例如,我添加了一个默认值以启用现有数据的更新。在其他情况下,我将onDelete操作从 将“ ReferentialAction.Cascade”更改为“ ReferentialAction.NoAction”,因为“更新数据库”需要进行此更改。

这些更改已正常运行。但是,我注意到它们没有反映在“ ApplicationDbContextModelSnapshot.cs”文件中。我的理解是,当我使用“ add-migration”命令时,它将当前数据模型与快照文件进行比较。由于这些更改未反映在数据模型中,因此后续迁移不会反映这些手动更改。

我的问题是:

  1. 快照文件在将更改应用于数据库时起什么作用?是否只是简单地应用了迁移而不参考快照文件?
  2. 由于快照文件与集体迁移略有不同,我将来是否可能会遇到问题?
  3. 是否有办法从迁移中重建快照文件?

0 个答案:

没有答案