2017-02-11 66 views
1

我使用Linq to xml来创建xml文件。我的xml格式如下所示。使用linq to xml写入最后一个节点

enter image description here

<weather>元素将在每一个我通过迭代循环时间创建。并且每次我想写入最新的<weather>元素创建。我怎么做?

+0

请出示您的现有代码。 – mxii

+0

foreach(xdoc.Elements(“Language”)。元素(“Text”)中的XElement元素) { xTSDoc.Element(“data”).Add(new XElement(“weather”)); (“data”)。Element(“weather”)。Add(new XElement(“Text”,element.Attribute(“Number”)。Value)); xTSDoc.Element(“data”)。Element(“weather”)。Add(new XElement(“Name”,element.Attribute(“Name”)。Value)); } –

+0

我没有得到如何访问最后添加的天气元素。 –

回答

0

这应该做的伎俩:

foreach (XElement element in xdoc.Elements("Language").Elements("Text")) 
{ 
    // method 1, store a reference.. 
    var weather = new XElement("weather"); 
    xTSDoc.Element("data").Add(weather); 
    weather.Add(new XElement("Text", element.Attribute("Number").Value)); 
    weather.Add(new XElement("Name", element.Attribute("Name").Value)); 

    // method 2, get last element 
    xTSDoc.Element("data").Add(new XElement("weather")); 
    xTSDoc.Element("data").Elements("weather").Last().Add(new XElement("Text", element.Attribute("Number").Value)); 
    xTSDoc.Element("data").Elements("weather").Last().Add(new XElement("Name", element.Attribute("Name").Value)); 
} 
+0

非常感谢。它的工作正常。 –

相关问题