我有几个环境的web.config转换.在配置文件中,我有一个applicationSettings部分,其中包含多个设置和值对.
我已经尝试基于我用来匹配名称的语法,并更改连接字符串以匹配设置并更改值但转换失败.这是可能吗?
所以我的web.config有:
<applicationSettings>
<AppName.My.MySettings>
<setting name="setting1" serializeAs="String">
<value>Initial Value</value>
</setting>
</AppName.My.MySettings>
</applicationSettings>
Run Code Online (Sandbox Code Playgroud)
我的转换文件有
<applicationSettings>
<add name="setting1" value="Changed Value" xdt:Transform="SetAttributes" xdt:Location="Match(name)"/>
</applicationSettings>
Run Code Online (Sandbox Code Playgroud)
我预览转换时没有错误,但是连接字符串设置被转换后,setting1的值不是.任何帮助赞赏.
UPDATE
<applicationSettings>
<add name="setting1" value="Changed Value" xdt:Transform="Replace" xdt:Location="Match(name)"/>
</applicationSettings>
Run Code Online (Sandbox Code Playgroud)
不幸的是同样的问题......没有错误也没有变换.
解决方案我确实忘记提到我有多个设置所以标记答案是部分解决方案......这就是我做到的... Web.Config ...
<applicationSettings>
<AppName.My.MySettings>
<setting name="setting1" serializeAs="String">
<value>Initial Value 1</value>
</setting>
<setting name="setting2" serializeAs="String">
<value>Initial Value 2</value>
</setting>
<setting name="setting3" serializeAs="String">
<value>Initial Value 3</value>
</setting>
</AppName.My.MySettings>
</applicationSettings>
Run Code Online (Sandbox Code Playgroud)
转换文件
<applicationSettings xdt:Transform="Replace">
<AppName.My.MySettings>
<setting name="setting1" serializeAs="String">
<value>CHANGED VALUE 1</value>
</setting>
<setting name="setting2" serializeAs="String">
<value>Initial value 2</value>
</setting>
<setting …Run Code Online (Sandbox Code Playgroud)