Azure Devops 中针对不同环境的 app.config 转换

Jer*_*och 5 c# azure-devops azure-pipelines-build-task azure-pipelines

我有一个 .Net Framework 4.6.1 项目,它创建了一个 Windows 服务。我们希望通过 Azure Devops 管道构建和部署它。我们已经成功地为我们所有的 .Net Core web 服务创建了管道(使用 ASPNETCORE_ENVIRONMENT 变量和一组 appsettings.{ENV}.json 文件)但是 Windows 服务在提供不同的不同环境的配置。

我有适用于 App.config XML 文件的 XDT 转换。我可以右键单击 Visual Studio 中的文件和“预览转换”,它工作正常。

不清楚的是我如何将其转换为管道配置。Build 任务似乎能够运行转换,但我不确定我们如何为不同的 Deploy 阶段进行不同的转换。相反,所有环境最终都会将任何转换应用于作为构建步骤的一部分选择的构建配置。

我已经关注了许多博客文章 - 包括这篇文章,它声称您可以有多个构建配置,但我似乎没有设置。

我错过了什么?

Rya*_*ter 3

我认为我们对 VSTS 所做的事情在较新的 Azure DevOps 中是类似的。我们将转换添加令牌到配置文件 IE“DefaultConnection”:“Server= DBServer ;Database=DB;User ID= DBUser ;Password= DBPassword ;” 然后,发布环境中有一个名为 Tokenization 的任务,它从发布环境中提取变量集来替换下划线标记。

我们使用这个插件来执行标记化步骤。https://marketplace.visualstudio.com/items?itemName=TotalALM.totalalm-tokenization