如何使用EF 4.4与现有数据库从POCO更新数据库?

时间:2013-10-29 11:24:48

标签: c# entity-framework-5 ef-migrations

使用的技术:

  • SQL Server 2012
  • ASP.NET MVC 4
  • EF 4.4
  • Windows 8 Pro(开发机器)
  • Windows Server 2012

我正在使用EF处理由EF处理的数据库更新但没有迁移,很少人+短时间。我们投入生产并且需要进行一些后期更改,没有迁移的EF因为我们不能再放弃桌子而使事情复杂化了。由于时间紧迫,我决定禁用集成(Database.SetInitializer<Context>(null);)并手动进行所有更改(DB和POCO)。

现在我需要重新激活该功能。我的问题是,我现在可以使用已设置的环境和大量数据激活迁移吗?

我读过这篇文章却没有成功:

http://weblogs.asp.net/scottgu/archive/2010/08/03/using-ef-code-first-with-an-existing-database.aspx

我感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

我会考虑使用SQL Server Data Tools来更新您的生产环境。它提供的控制不仅仅是实体框架所创建的(例如存储过程)。

如果您不知道更改了什么,请从更新 DbContext创建一个新的(空)数据库。然后使用SSDT将新创建的数据库与生产数据库进行比较。它将显示您在数据库模式中更改的内容并提供更新脚本。数据比较和  还支持基于现有数据的“智能插入”。