Tfs 如何在连续部署中签入和发布代码后,以代码优先的方式自动更新数据库

Tfs 如何在连续部署中签入和发布代码后,以代码优先的方式自动更新数据库,tfs,ef-code-first,continuous-integration,entity-framework-migrations,continuous-deployment,Tfs,Ef Code First,Continuous Integration,Entity Framework Migrations,Continuous Deployment,​在我们的Web API应用程序中,持续部署需要以下场景 用户将在VS中签入代码,代码将自动生成,代码将发布,代码将部署 但若我们使用实体框架代码优先的方法,那个么我们如何在不使用手动命令(添加迁移/更新数据库)的情况下更新数据库,并通过该签入使数据库保持最新状态呢 您可以尝试在构建/部署过程中运行添加迁移/更新数据库命令 假设您使用的是vNext build 首先在生成定义中添加“Nuget Installer”任务以 在生成过程中恢复实体框架迁移.exe将被删除 安装在\packages\E

​在我们的Web API应用程序中,持续部署需要以下场景

用户将在VS中签入代码,代码将自动生成,代码将发布,代码将部署


但若我们使用实体框架代码优先的方法,那个么我们如何在不使用手动命令(添加迁移/更新数据库)的情况下更新数据库,并通过该签入使数据库保持最新状态呢

您可以尝试在构建/部署过程中运行添加迁移/更新数据库命令

假设您使用的是vNext build

  • 首先在生成定义中添加“
    Nuget Installer
    ”任务以 在生成过程中恢复实体框架<代码>迁移.exe将被删除 安装在
    \packages\EntityFramework.\tools
    文件夹中
  • 然后添加“
    命令行
    ”任务以运行migrate.exe。进入
    “\packages\EntityFramework.\tools\migrate.exe”
    “工具”区域和
    “arguments”
    字段中的参数
  • 参考此线程:

    您还可以尝试扩展“”,该扩展包含一组任务,允许您使用实体框架代码优先迁移:

    方法1:生成SQL脚本

    第一种方法允许您生成包含所有 迁移。此脚本可以通过手动运行 在NuGet包中更新数据库-SourceMigration 0-Script Visual Studio中的管理器控制台。然后可以手动运行 此脚本在发布后或在发布期间自动执行 使用允许您运行SQL脚本的扩展。

    任务名称:生成迁移SQL脚本

    其他文章可能有助于: