- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想使用 Azure tfs 为 .net Web 应用程序开发管道。我使用了已为此类部署提供的 IIS Web 部署模板/实用程序。在发布管道中,我使用 XML 变量转换。但我面临的一个问题是,在项目中,我有多个 .config 文件,并且我已将它们包含在我的 web.config
文件中,如下所示
<configuration>
<connectionStrings configSource="None"/>
<appSettings file="None">
</appSettings>
根据不同环境的发布,我在发布过程中进行了变量替换。例如,文件夹 app_data 包含 app_sttings_*.config
文件,并且文件变量确实会被替换。但我的连接字符串文件有问题,我无法在发布期间更改 configSource。
我这样做是错误的还是遗漏了一步?
最佳答案
因为 configSource 属性无法被 IIS Web App Deploy 任务替换。您可以使用扩展工具Magic Chunks替换 configSource 值。
您可以在 Azure DevOps 组织中安装 Magic Chunks 扩展。并在IIS Web App 部署任务之前添加配置转换任务来替换configSource值。
首先,您需要定义一个变量(例如 configSource)来保存发布管道变量部分中的 configSource 值。然后配置配置转换任务的转换部分,如下
{
"configuration/connectionStrings/@configSource": "$(configSource)"
}
还有另一个替换 token 任务可以替换 configSource 值。您可以查看here .
它在 IIS Web App Deploy task 中说发布管道中定义的变量将与配置文件的 appSettings、applicationSettings 和 connectionStrings 部分中的“key”或“name”条目进行匹配。也许这就是 configSource 无法被 IIS Web App Deploy 任务替换的原因。
参见File transforms and variable substitution reference了解更多信息。
关于azure - 如何在发布构建期间用 configSource 替换连接字符串文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63142632/
我是一名优秀的程序员,十分优秀!