我正在生成一个 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)));
}
}
Run Code Online (Sandbox Code Playgroud)
此代码生成以下 xml 树:
<Root>
<sub0>
<subsub0 />
<subsub0 />
</sub0>
<sub1>
<subsub1 />
<subsub1 />
</sub1>
<sub2>
<subsub2 />
<subsub2 />
</sub2>
<sub8>
<subsub123 />
</sub8>
</Root>
Run Code Online (Sandbox Code Playgroud)
我想使用这样的代码向 sub1 节点添加新元素
root.Add(new XElement("sub1",new XElement("subsub123")));
Run Code Online (Sandbox Code Playgroud)
但是这段代码不像我希望的那样工作。它只是向根添加新的相同节点。这样做的正确方法是什么?
用:
root.Element("sub1").Add(new XElement("subsub123"));
Run Code Online (Sandbox Code Playgroud)
基本上这是找到现有 sub1元素并向其添加一个新的子元素,而不是添加一个新sub1元素。
| 归档时间: |
|
| 查看次数: |
1657 次 |
| 最近记录: |