Entity framework 如何通过MsDeploy在发布时迁移实体框架数据库

Entity framework 如何通过MsDeploy在发布时迁移实体框架数据库,entity-framework,deployment,msdeploy,entity-framework-migrations,Entity Framework,Deployment,Msdeploy,Entity Framework Migrations,对于我当前的项目,我希望在发布时将数据库更新到正确的版本,而不是通过App_Start首次运行 似乎支持通过命令行工具“migrate.exe”进行手动升级,该工具与Entity Framework(5.0 rc2)一起提供。但我找不到任何关于其他人如何将此工具与msdeploy结合起来,在发布时而不是首次运行时升级数据库的信息 我发现以下页面解释了如何使用migrate.exe工具: 但这迫使我以某种方式“知道”连接字符串信息 我的最佳解决方案如下: connectionstring在set

对于我当前的项目,我希望在发布时将数据库更新到正确的版本,而不是通过App_Start首次运行

似乎支持通过命令行工具“migrate.exe”进行手动升级,该工具与Entity Framework(5.0 rc2)一起提供。但我找不到任何关于其他人如何将此工具与msdeploy结合起来,在发布时而不是首次运行时升级数据库的信息

我发现以下页面解释了如何使用migrate.exe工具:

但这迫使我以某种方式“知道”连接字符串信息

我的最佳解决方案如下:

  • connectionstring在setParameters.xml文件中配置为 发布时替换
  • 关于代码库的一次又一次发布 使用正确的connectionstring调用migrate.exe
  • 我搜索的似乎是一个“实体框架MSDeploy提供程序”(请参见:),但他们似乎在不久前放弃了该选项

    您有两个选项:

  • 在发布配置文件中配置Visual Studio;或
  • 在选项卡上配置项目属性

  • 我还没有使用它们中的任何一个,但我正在研究,因为我将使用完全相同的场景。

    您可以让您的迁移生成用于升级的SQL脚本,并在发布web时使用该脚本。我认为目前不支持在web部署期间运行迁移。