C# 将新节点添加到xml树

C# 将新节点添加到xml树,c#,xml,linq,C#,Xml,Linq,我正在生成一个xml树: var root = new XElement("Root"); for(int i =0;i<3;i++) { var sub0lvl = new XElement(String.Format("sub{0}",i)); root.Add(sub0lvl); for(int j=0;j<2;j++) { sub0lvl.Add(new XElement(String.Format("subsub{0}",i)));

我正在生成一个xml树:

var root = new XElement("Root");
for(int i =0;i<3;i++)
{ 
   var sub0lvl = new XElement(String.Format("sub{0}",i));
   root.Add(sub0lvl);
   for(int j=0;j<2;j++)
   {
     sub0lvl.Add(new XElement(String.Format("subsub{0}",i)));
   }
}
<Root>
  <sub0>
    <subsub0 />
    <subsub0 />
  </sub0>
  <sub1>
    <subsub1 />
    <subsub1 />
  </sub1>
  <sub2>
    <subsub2 />
    <subsub2 />
  </sub2>
  <sub8>
    <subsub123 />
  </sub8>
</Root>
但是这个代码并没有像我希望的那样工作。只需向根添加新的相同节点。正确的方法是什么?

使用:

root.Element("sub1").Add(new XElement("subsub123"));
基本上就是找到现有的
sub1
元素并向其中添加新的子元素,而不是添加新的
sub1
元素

root.Element("sub1").Add(new XElement("subsub123"));