迁移实体框架而不迁移文件

时间:2016-05-08 03:40:50

标签: c# entity-framework visual-studio-2015 code-first ef-migrations

我正在开发一个项目,该项目首先使用Entity Framework代码来实现其数据结构。它首先使用代码创建,但从未再次迁移,只存储了其初始迁移数据。从那时起,数据库已经通过VS2015中的服务器资源管理器直接修改。

没有关于任何更改的迁移信息,数据库中包含我不能丢失的重要信息。

这让我想到了我的问题。

如果我创建了新的迁移并从中更新了数据库,它是否会清除迁移中未记录的所有更改,并且仍会保留所做的更改?

2 个答案:

答案 0 :(得分:1)

我相信以下两篇文章会对你有帮助。

EF 4.3迁移演练:http://blogs.msdn.com/b/adonet/archive/2012/02/09/ef-4-3-code-based-migrations-walkthrough.aspx

更新

使用现有数据库进行代码优先迁移 https://msdn.microsoft.com/en-us/data/dn579398.aspx

答案 1 :(得分:1)

你的问题的细节有点粗略,但我会做一些假设,以帮助你。请纠正我错在哪里。

我假设您希望保留直接对数据库产生的更改所产生的数据,但您不希望保留对数据库产生的更改 - 换句话说:保留数据但不保留数据结构。

我的建议如下

  • 当您要做一些您不确定的事情时,请始终执行数据库的完整备份。
  • 如果您可以识别要更新的表,则始终可以使用SELECT INTO语句仅创建特定表的快速备份。执行EF数据库迁移时,除非您明确编写删除脚本,否则不会删除这些表。
  • 您可以通过SELECT INTO方法在EF迁移中构建Sql()语句,也可以手动对数据库运行命令。

更多信息: