我正在使用下面帖子中描述的 web.config 转换,以便为不同的环境生成配置。
http://vishaljoshi.blogspot.com/2009/03/web-deployment-webconfig- transformation_23.html
我可以通过匹配键来进行“替换”转换,例如
<add key="Environment" value="Live" xdt:Transform="Replace" xdt:Locator="Match(key)" />
我可以做“插入”,例如
<add key="UseLivePaymentService" value="true" xdt:Transform="Insert" />
但我 真正 发现有用的是 ReplaceOrInsert 转换,因为我不能总是依赖具有/不具有特定密钥的原始配置文件。
有没有办法做到这一点?
我找到了一个便宜的解决方法。如果您有很多需要“替换或插入”的元素,它并不漂亮并且不会很好地工作。
执行“删除”,然后执行“InsertAfter|InsertBefore”。
例如,
<authorization xdt:Transform="Remove" /> <authorization xdt:Transform="InsertAfter(/configuration/system.web/authentication)"> <deny users="?"/> <allow users="*"/> </authorization>