2014-06-13 140 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); 
相關問題