2014-06-13 108 views
0

我需要更改一个父元素中元素的顺序。所以很容易获得排序的元素。如何对父元素中的XML元素进行排序?

myXML.Elements("Issue").OrderBy(x => int.Parse(x.Attribute("id").Value)); 

但是我需要将这个排序的集合返回到myXML XElement而不影响它的结构。

如何做到这一点?

+0

试想一下'<发行ID = “3”/><发行ID = “1”/>' - 你会怎样想的结果是? –

+0

@Jon Skeet,父元素仅包含元素。但我需要保存这个父元素的属性。 – splash27

回答

2

这听起来像你只是想:

// No need to specify "Issue" if that's all that's in myXML. Prefer explicit 
// attribute conversion over "manual" parsing 
var orderedIssues = myXML.Elements().OrderBy(x => (int) x.Attribute("id")); 
myXML.ReplaceNodes(orderedIssues); 
相关问题