Sql 使用实体框架时处理数据库迁移
我们正在C#中构建一个应用程序,它使用SQL Server 2008的实体框架。我们使用VisualStudio中的设计器设计模型,并从中自动生成实体 我们正在开发1.0版。当我们发布2.0时,我们需要对模型和底层数据库结构进行更改。我想我们需要所谓的“数据库迁移” 传统上,我在数据库中有一个名为“version”的表。每当我创建软件的新版本时,我都会创建包含ALTERTABLE语句的数据库升级脚本。我的软件已检查版本表并运行将数据库升级到“软件版本”所需的升级脚本Sql 使用实体框架时处理数据库迁移,sql,c#-4.0,entity-framework-4,Sql,C# 4.0,Entity Framework 4,我们正在C#中构建一个应用程序,它使用SQL Server 2008的实体框架。我们使用VisualStudio中的设计器设计模型,并从中自动生成实体 我们正在开发1.0版。当我们发布2.0时,我们需要对模型和底层数据库结构进行更改。我想我们需要所谓的“数据库迁移” 传统上,我在数据库中有一个名为“version”的表。每当我创建软件的新版本时,我都会创建包含ALTERTABLE语句的数据库升级脚本。我的软件已检查版本表并运行将数据库升级到“软件版本”所需的升级脚本 有没有更好的处理方法?如果我
有没有更好的处理方法?如果我不必自己编写ALTERTABLE脚本并编写自己的软件来升级数据库结构,那就太好了。请检查这篇文章。这是关于EF4的CTP4,但这是你需要的
不幸的是,这还不可用。CTP5是几天前发布的,据我所知,它还没有包括在内。当我第一次做模型时,我通常做的是将我的模型指向一个纯粹用于模式的数据库(因此我有一个myapp数据库,它是我的应用程序运行的地方,但我的EF4模型被输出到myapp_模式数据库)。更新myapp_模式时,我会生成更新脚本,并使myapp的数据库模式与myapp_模式相同。Cool。但是如果解决方案在今天使用模型优先的方法,而不是在将来某个时候使用代码优先的方法,那就更酷了我同意这一点,我希望这一功能不会局限于代码优先,而是扩展到模型优先。我真的希望他们尽快发布。这可能是供参考的答案,而不是解决方案。希望有人真的知道像这样的事情。