在 teamcity 构建步骤中替换配置值

Replace config value in teamcity build step

我在 teamcity 中有一个构建步骤,它允许我用 web.release.config 值替换 web.config 值。我想再添加一个步骤——将一些参数从 teamcity 传递到 web.config。在我的例子中,它将是发布版本,它是连接字符串的一部分。我最好的想法就是拥有一些 powershell 脚本来替换某些文件中的文本 (web.config)。有没有更好的选择?

网络配置示例

 <add key="Version" value="Replace me, please from teamcity"/>
 <add key="some key" value="example 2. version as part of some value #VERSION"/>

您可以使用 the web.config transformation syntax

而不是在依赖于 TeamCity 的版本中创建 web.config

即:创建特定的连接字符串:

<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
  <connectionStrings>
    <add name="MyDB" 
  connectionString="value for the deployed Web.config file" 
  xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
 </connectionStrings>
</configuration>

你可以使用 File Content Replacer.