问题描述
|
我一直在尝试将EntityFramework与Code-First方法结合使用的ASP.NET MVC 3。我面临着几个问题。
如果架构更改和/或更新模型,如何同步数据库。现在,我必须删除并重新创建数据库,从而丢失所有数据。是否有可用的软件包,我可以使用该软件包来自动更新架构。在其中一个演示中,我看到Scott Hanselman使用\“ EntityFramework.Migration \”包。我想那不是发布使用。有其他选择吗?
MvcScaffolding重新创建所有视图/控制器。如果执行了MVCScaffolding并且重新创建了视图,是否可以在Views中保留CSS样式。
先谢谢了。
解决方法
有多种工具可以为数据库生成更改脚本。至于实体框架本身,很快就会有EntityFramework.Migrations也将处理此问题。
http://blogs.msdn.com/b/efdesign/archive/2010/10/22/code-first-database-evolution-aka-migrations.aspx
我不确定您的第二个问题。我个人不使用自动生成视图,但是,我相信您应该能够修改T4模板以所需的方式生成视图。
,关于数据丢失问题,请研究使用数据库初始化程序类。每次模型更改时,您都可以播种数据。我知道这不是理想的选择,但这是我们使用EF 4.1所拥有的一切。您可以使用Red Gate的SQL工具带之类的工具来保持环境同步。作为软件包的一部分,您可以同步数据。您始终可以备份SQLToolbelt创建的脚本。
,对于脚手架问题,只需更改脚手架模板本身,使其包含CSS类。这样,每当您重新安装脚手架时,CSS类都会存在。
有关此的更多信息