我们将框架7移动到EF核心2.0。现在我们遇到了一个小问题。
当我们使用Entity Framework 7时,它很容易更新客户端数据库。(update -database)
但是在EF核心中存在一个问题,原因是每次更改我们都要添加迁移,因此在这种情况下我们现在有100个迁移历史记录。
示例:(20180313063924_NewVersion,14689013063934_NewVersion等)
所以当我们更新客户端数据库时,我们必须保留100个迁移历史记录 但我认为这不是生产水平的好方法
无论如何都有解决这个问题。非常感谢你们!
答案 0 :(得分:1)
嗯,这正是EF和EFCore的工作方式。
每次迁移都代表DbContext / Database上所需的修改,以便对模型的更改有效。因此,如果您有更改,它们将由迁移表示。
一个 - 在我看来 - 不是很干净的解决方案可能是:
Migrations
目录(有效删除<yourContextName>Snapshot.cs
目录中的所有迁移文件和Migrations
文件)InitialCreate
结果将只是一个代表当前项目的model / dbcontext状态的迁移。 只有当项目仍然处于开发阶段且没有在任何阶段进行任何部署时,才能实现该方法。
请注意,我不推荐该解决方案/方法。在我看来,你应该像他们一样离开迁移。
有关详细信息,请阅读以下内容: