替换XML中的某些元素[提供的示例XML]

时间:2013-09-09 10:42:19

标签: c# xml tags

我有一个看起来像这样的xml文档。我有一个XML文件结构如下。 示例XML如下:

    <Dr.Watson>
    <Bugs>
      <Bug Name="Bug.add --> AAAAAAAAAAAA">
        <criteria>
          <includeFilterSets>
            <filterSet>
              <filter>
                <filterName>PRODUCT_NAME</filterName>
                <operator>
                  <name>Equals</name>
                </operator>
                <value>Dr.Watson</value>
              </filter>
            </filterSet>
          </includeFilterSets>
          <grouping>
            <groupBy>
              <name>STATUS</name>
            </groupBy>
          </grouping>
          <caseSensitive>false</caseSensitive>
          <entityToSearch>
            <name>BUG</name>
          </entityToSearch>
        </criteria>
      </Bug>
      </Bugs>

  </Dr.Watson>

我想替换XML文件中的一些元素,如下所示:

<Dr.Watson>
<Bugs>
  <Bug Name="Bug.add --> AAAAAAAAAAAA">
    <criteria>
      <includeFilterSets>
        <filterSet>
          <filter>
            <filterName>PRODUCT_NAME</filterName>
            <operator>
              <name>Equals</name>
            </operator>
            <value>Dr.Watson</value>
          </filter>
        </filterSet>
      </includeFilterSets>
      <grouping>
        <groupBy>
          <name>STATE</name>
        </groupBy>
      </grouping>
      <caseSensitive>false</caseSensitive>
      <entityToSearch>
        <name>BUG</name>
      </entityToSearch>
    </criteria>
  </Bug>
  </Bugs>
  </Dr.Watson>

我想更改可用的后面的状态。 请建议。

1 个答案:

答案 0 :(得分:0)

var xdoc = XDocument.Load(path_to_xml);
var groupByName = xdoc.XPathSelectElement("//groupBy/name");
groupByName.Value = "STATE";
xdoc.Save(path_to_xml);