gpt4 book ai didi

entity-framework - EF7 代码优先 -> SSDT 包 -> 生产服务器部署

转载 作者:行者123 更新时间:2023-12-05 05:22:34 24 4
gpt4 key购买 nike

我正在尝试围绕新的 ASP.NET Core/EF7 应用程序设置持续交付流程。

我想使用 Code First EF7 生成和更新我的本地开发数据库,​​然后将更改添加到我的 SSDT 数据库项目中。当我将 webapp 部署到我的 Azure 应用服务时,我计划使用 MSDeploy 和 dbSqlPackage Provider 来更新我的 Azure SQL prod 数据库。 https://msdn.microsoft.com/en-us/library/hh550081(v=vs.103).aspx

另请注意,我将进行某种预生产部署步骤,我会在预生产系统上进行一些测试,然后再无意识地将数据库更新部署到生产环境中。

我的问题是 - 如何在我的本地开发箱上自动执行更新 SSDT 项目以反射(reflect)我的本地开发数据库的步骤?我可以从数据库到 SSDT 项目进行手动 SSDT 比较,这将更新 SSDT 项目 sql 文件。我正在查看 SQLProject.exe,但据我所知,它只会创建 dacpac 或发布到数据库。

有人知道自动执行此步骤的方法吗?

最佳答案

我认为考虑到您的设置,我会考虑 EF 迁移而不是 SSDT,特别是考虑到您使用的是 EF7 并且迁移像梅毒一样不像过去那么尴尬。

假设您不想进行 EF 迁移,则没有简单的方法可以从已部署的数据库中自动生成 .sqlproj 和相关的 .sql 文件;但是,如果您不关心数据库项目本身,那么使用 sqlpackage(或您自己在 DacFX 之上的代码)从您部署的数据库生成 .dacpac 并不难,并且然后使用 that 作为您通过其他环境推广的人工制品。

至于管理预生产/生产隔离,有很多方法可以做到这一点,包括但不限于 VSTS 发布管理 - 它内置了部署到 Azure SQL DB 的任务。

关于entity-framework - EF7 代码优先 -> SSDT 包 -> 生产服务器部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40106054/

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