我在web.config中有以下节点:
<configuration>
...
<scheduling>
<agent>
<param desc="database">core</param>
</agent>
<agent>
<param desc="database">master</param>
</agent>
</scheduling>
...
</configuration>
我想删除包含主内容的子param节点的整个<agent>
节点。或多或少我的xdt变换节点如下:
<configuration>
...
<scheduling>
<agent
xdt:Transform="Remove"
xdt:Locator="XPath(./param[@desc='database']/??????)" />
</scheduling>
...
</configuration>
如您所见,我不知道如何与节点内容字符串匹配。我需要在这里添加什么?
环境说明: Windows 7 - visual studio 2010 SP1
答案 0 :(得分:12)
将text()
的额外测试添加到定位器中。匹配<param>
节点:
xdt:Locator="XPath(./param[@desc='database' and text()='master'])">
编辑:要匹配<agent>
节点,您需要将param
移动到XPath匹配的谓词中:
xdt:Locator="Condition(param/@desc='database' and param/text()='master')">