相关疑难解决方法(0)

在 appSettings 之外更新 web.config 中的变量

我需要更新 Azure TFS 中 web.config 中的值。我能够将 connectionString 的值替换为 appSettings 的一部分(为此,我需要启用名为 XML 变量替换的设置(在 IIS Web 部署下)。

但是,web.config 中还有其他区域不会被替换。

我尝试了几种不同的方法,使用不同的任务进行令牌替换,使用变量的“发布”或“环境”设置,使用变量组。然而,这些都没有奏效。

目前我正在使用替换令牌任务(可在https://github.com/qetza/vsts-replacetokens-task#readme 获得

我已将令牌前缀和后缀设置为 __(以匹配 web.config)

这是 web.config 文件的摘录

<?xml version="1.0"?>
<configuration>
    <appSettings>
        <add key="ConnectionString" value="__ConnectionString__"/>
    </appSettings>
    <system.web>
        <pages theme="__Theme__" controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID">
            <controls>
                <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
            </controls>
        </pages>
    </system.web>
    <system.serviceModel>       
        <serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
        <bindings>
            <customBinding>
                <binding name="TestBinding1">
                    <textMessageEncoding maxReadPoolSize="64" maxWritePoolSize="16" messageVersion="Soap12" writeEncoding="utf-8">
                        <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
                    </textMessageEncoding>
                    <httpsTransport manualAddressing="false" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" allowCookies="false" authenticationScheme="Anonymous" bypassProxyOnLocal="false" decompressionEnabled="true" …
Run Code Online (Sandbox Code Playgroud)

azure-devops

5
推荐指数
1
解决办法
2131
查看次数

标签 统计

azure-devops ×1