我正在使用VSTS开发DevOps。我有两个Web项目,如 webproject1 和 webproject2 ,每个项目都包含Web.config文件。但是,Web.config文件的那些Web项目包含具有不同值的相同键。
实施例: WebProjects1包含具有这些键值的Web.config文件
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<add name="DBConnectionString" connectionString="Server=XXXX;Integrated Security=SSPI;Persist Security Info=True;Database=XXXX;Connect Timeout=60;MultipleActiveResultSets=True;Min Pool Size=10;Max Pool Size=200;Application Name=XXXX" providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
WebProjects2包含带有这些键值的Web.config文件
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
</configSections>
<connectionStrings>
<add name="DBConnectionString" connectionString="Server=XXXX;Integrated Security=SSPI;Persist Security Info=True;Database=XXXX;Connect Timeout=60;MultipleActiveResultSets=True;Min Pool Size=10;Max Pool Size=200;Application Name=XXXX" providerName="System.Data.SqlClient" />
</connectionStrings>
</configuration>
对于这些项目,我使用 IIS Web App Manag e和 IIS Web App部署部署任务在VSTS中创建了发布定义。我想用两个Web.config文件中的客户端键值替换键值。但是这两个Web.config文件具有相同的密钥。因此,我无法使用变量选项卡在IIS Web App Deploy VSTS发布任务下使用 XML变量替换选项将两个Web.config文件中的客户端值替换为密钥。
我按照这个link使用VSTS'正确'转换Web.Config文件,但是本文档包含用单个web.config文件中的客户端值替换密钥。但它不包含有关多个web.config文件是否在多个项目中具有相同键的说明。
我知道使用多配置架构来实现上述问题,例如为VS2015中的每个Web项目创建Web.Debug.config和Web.Release.config文件。但我不想要这个过程。
提前致谢....