如果appSettings条目参数化,Web.config的预期内容是什么?

时间:2014-03-13 23:20:01

标签: msbuild msdeploy

我正在尝试在我的Web.config中参数化appSettings条目。由于这是一个相当长的构建过程的一部分,我想在我们的CI服务器上尝试之前验证我的参数化是否真正有效(即试验和错误不是一个好主意)。

因此,如果我使用/T:Package运行MSBuild来创建我的包,我希望创建的.zip文件包含一个Web.config,我的appSetting条目被标记化,就像连接字符串被标记化一样。

但是,到目前为止,我没有得到我预期的结果。我的假设错了吗? 是否可能在实际部署步骤中首先发生标记化/替换?

这是标记化的web.config。请注意我的appSetting没有被标记化:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <lots of stuff here...>
  <connectionStrings>
    <add name="DefaultConnection" connectionString="$(ReplacableToken_DefaultConnection-Web.config Connection String_0)" providerName="System.Data.SqlClient" />
  </connectionStrings>
  <appSettings>
    <add key="mySetting" value="monkey"/> <!-- Shouldn't monkey this be tokenized? -->
  </appSettings>
  <rest of web config here ...>

1 个答案:

答案 0 :(得分:1)

在Web发布MSBuild目标中处理con字符串标记化。它不是Web Deploy本身的一部分。在您的方案中,我希望创建包并且不修改应用程序设置。

创建包时,有两种方法可以看到参数: