我们在VS 2012中创建了一个网站。我们右键单击了我们的web.config文件并选择了“添加配置转换”并创建了web.config
的发布和调试版本。
其中我们在<appSettings>
的调试版和发布版中的web.config
部分添加了一些新条目:
<appSettings>
<add key="username" value="user" xdt:Transform="Insert" xdt:Locator="Match(key)"/>
<add key="password" value="pwd" xdt:Transform="Insert" xdt:Locator="Match(key)"/>
<add key="GET" value="https://somewhere.com/url1" xdt:Transform="Insert" xdt:Locator="Match(key)"/>
<add key="POST" value="https://somewhere.com/url2" xdt:Transform="Insert" xdt:Locator="Match(key)"/>
</appSettings>
我们已经尝试了各种变换类型,包括'Insert'和'SetAttribute'。到目前为止,没有人产生在构建之后将这些新的appSettings条目添加到web.config的预期结果。
我们是否需要在web.config
中为它们添加占位符条目,还是我们缺少另一个步骤?
[编辑]上面的appSettings包含在<configuration>
的调试和发布版本中的web.config
元素中。
答案 0 :(得分:1)
我的猜测是插入和定位器不能一起工作。如果您正在进行插入操作,则不要尝试在任何内容上进行匹配。如果您尝试进行替换或设置某些属性,则需要进行定位器匹配。如果你正在进行插入,你不需要寻找某些东西(使用Locator),因为它是全新的。
简而言之,如果这是一个新条目,请保留插入,删除定位。
有意义吗?