在.NET中更新XML标记属性值

时间:2012-10-03 02:26:44

标签: vb.net

我有一个像这样的xml字符串

<root>
Am trying <br id="9"/>to reorder the <br id="5"/>break 
lines <br id="10"/> attributes value
</root>

任何方式将XML BR标记ID属性的属性值按顺序更改 像这样

<root>
Am trying <br id="1"/>to reorder the <br id="2"/>break 
lines <br id="3"/> attributes value
</root>

1 个答案:

答案 0 :(得分:1)

以下是使用LINQ TO XML

的一个示例
Dim doc as XElement = <root>
Am trying <br id="9"/>to reorder the <br id="5"/>break 
lines <br id="10"/> attributes value
</root>

Dim index as Integer = 0

For Each br In doc.<br>
    index += 1
    br.@id = index
Next 

这会产生以下输出

<root>
Am trying <br id="1" />to reorder the <br id="2" />break 
lines <br id="3" /> attributes value
</root>

此外,这是使用LAMBDA表达式的示例。

doc.<br>.ToList().ForEach(Sub(br) 
                index += 1 
                br.@id = index 
              End Sub)