0

我需要使用 Linq 在 XML 的最后一个元素之前添加新元素。

例如:

<?xml version="1.0" encoding="utf-8"?>
<products>
  <product id="p1">
    <name>Delta</name>
    <price>800</price>
    <country>Denmark</country>
  </product>
  <product id="p3">
    <name>Alfa</name>
    <price>1200</price>
    <country>Germany</country>
  </product>
</products>

<stock></stock><country>使用 Linq 在元素之前插入新元素

4

1 回答 1

0
// load the XML file into XDocument instance
var doc = XDocument.Load("sourceFile.xml");

// find all <country> elements
var countries = doc.Root.Elements("product").Elements("Country");

// add <stock /> before each <country> elements
foreach(var country in countries)
{
    country.AddBeforeSelf(new XElement("stock"));
}

// save document to the file
doc.Save("sourceFile.xml");
于 2013-08-30T06:25:27.123 回答