gpt4 book ai didi

c# - Entity Framework 自动迁移

转载 作者:太空宇宙 更新时间:2023-11-03 23:34:45 24 4
gpt4 key购买 nike

我有一个 3 层架构项目(Web、服务、数据访问),我只想在 POCO 发生更改时将数据库迁移到最新版本。我们可以通过从 Application_Start 事件中调用自动迁移代码来做到这一点。在这种情况下,我的 web.xml 中没有 DataAccess 项目的引用。那么如何从Application_Start事件中调用自动迁移代码呢?

Database.SetInitializer(new MigrateDatabaseToLatestVersion<BlogContext, Configuration>()); 

我无法从 Application_Start 访问 BlogContext

请帮帮我

提前致谢[在Production环境下,我们无法通过VS运行update-database命令,所以有没有其他方法可以自动更新数据库)

最佳答案

您应该从迁移中生成要在生产中执行的脚本。对我有用的是使用更新数据库脚本

这会创建一个具有“迁移差异”的脚本,您可以将其作为 SQL 脚本手动应用到目标服务器数据库上(并且您应该插入正确的迁移表行等)。

就个人而言,我不信任“实时”场景中的自动更新,而且我总是更喜欢手动数据库管理(即创建或更改数据库所需的权限存在问题 - 更不用说共享主机等) - 但是从我所看到的情况来看,迁移在同步方面非常稳固(事实上,通常“解开”它们的唯一方法是删除 Db 并强制进行完整/全新更新)。希望对您有所帮助。

关于c# - Entity Framework 自动迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30930779/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com