[英]Entity Framework Automatic migration
我有一个3层架构项目(Web,Service,DataAccess),我只想在POCO发生变化时将数据库迁移到最新版本。 我们可以通过从Application_Start
事件调用自动迁移代码来完成此操作。 在这种情况下,我没有在我的网站中引用DataAccess
项目。 那么如何从Application_Start
事件中调用自动迁移代码?
Database.SetInitializer(new MigrateDatabaseToLatestVersion<BlogContext, Configuration>());
我无法从Application_Start
访问BlogContext
。
请帮我
提前谢谢[在生产环境中,我们无法通过VS运行update-database命令,所以有没有其他方法可以自动更新数据库)
您应该从迁移生成脚本以在生产中执行。 对我有用的是使用Update-Database -Script
这会创建一个带有“迁移差异”的脚本,您可以将其作为SQL脚本手动应用于目标服务器数据库(并且应该插入正确的迁移表行等)。
就个人而言,我不相信“实时”场景中的自动更新,我总是更喜欢手动数据库管理(即创建或更改Db所需的权限存在问题 - 更不用说共享主机等) - 但是从我的内容来看在同步方面,已经看到迁移是非常可靠的(实际上,通常是'解开'它们的唯一方法是删除Db并强制完全/新的更新)。 希望有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.