如何在父元素';s属性=x
本文关键字:属性 元素 | 更新日期: 2023-09-27 18:21:30
我有一个XML文档,其结构如下:
<position index="x">
<character>y</character>
</position>
我需要能够根据一个位置的索引添加一个新字符。例如,在index="3"的情况下,添加字符"g"。
我知道我可以找到具有以下内容的元素:
var query = from positions in myDoc.Descendants("position")
where (string)positions.Attribute("index").Value == n
select positions;
但我很难弄清楚是否需要类似的查询或构造来识别属性值为x的元素,然后添加子节点。
您的查询已经返回了要添加的元素,因此它可以归结为:
var query = from positions in myDoc.Descendants("position")
where (string)positions.Attribute("index").Value == n
select positions;
foreach (var position in query)
{
position.Add(new XElement("character", "g"));
}