删除WiX中的所有XML子项

时间:2014-08-12 15:36:30

标签: xml xpath wix

Wix中有没有办法删除特定XML元素的所有子元素?

我尝试了以下内容:

<util:XmlConfig Id="Perf_delete"
    File="[INSTALLFOLDER]unity.config"
    ElementPath='/configuration/unity/container/register[\[]@name="Perf"[\]]/constructor/param[\[]@name="machineNames"[\]]/array'
    VerifyPath="*"
    Action="delete"
    Node="element"
    On="install"/>

我在这里指定:

  • ElementPath - 指向元素本身
  • VerifyPath - *指定所有子元素

但这只删除了第一个孩子。

显然有一种解决方法可以删除元素本身,然后重新创建它,但是所有属性和命名空间都非常繁琐。

1 个答案:

答案 0 :(得分:0)

您可以删除父元素,然后再次创建它而不添加新的嵌套子元素。只使用一个util:XmlConfig声明,无法从父元素中删除多个子元素。