我已将SlowCheetah扩展程序和Nuget Package安装到我的Console App Project中。我已使用上下文菜单添加UAT构建配置并更新了测试设置以检查值是否正在转换。
不幸的是,当我尝试通过上下文菜单预览变换时,它只显示我未转换的App.Config。
我可以检查哪些步骤以查看此扩展程序无效的原因?
在主App Config中,我指定了一个appSetting。
<appSettings>
<add key="TomTestTransform" value="LOCAL" />
</appSettings>
在App.UAT.config中我覆盖它
<appSettings>
<add key="TomTestTransform" value="UAT" />
</appSettings>
当我预览Transform,或构建并检查配置输出时,它总是使用非转换版本。设置等于LOCAL。
答案 0 :(得分:2)
您需要使用xdt:
属性来匹配和调整元素,如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<!-- For more information on using transformations
see the web.comfig examples at http://go.microsoft.com/fwlink/?LinkId=214134. -->
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<appSettings>
<add key="TomTestTransform"
value="UAT"
xdt:Transform="Replace"
xdt:Locator="Match(key)" />
</appSettings>
</configuration>
使用xdt:Locator="Match(key)"
,您告诉处理器根据add
属性匹配key
元素,并在整个(位于)元素上应用xdt:Transform="Replace"
逻辑。 / p>
可用的XML转换有a msdn entry,它也适用于SlowCheetah转换,因为它们基于相同的“技术”。
此外,extension overview还有一些很好的文档!