我想使用XDocument更改XML的顺序
1 2
我想更改顺序,以便2出现在1之前.这个功能是否已经完成,或者我必须自己完成.例如,删除AddBeforeSelf()?
谢谢
与上述类似,但将其包装在扩展方法中。就我而言,这对我来说很好,因为我只想确保在用户保存xml之前在文档中应用了某个元素顺序。
public static class XElementExtensions { public static void OrderElements(this XElement parent, params string[] orderedLocalNames) { Listorder = new List (orderedLocalNames); var orderedNodes = parent.Elements().OrderBy(e => order.IndexOf(e.Name.LocalName) >= 0? order.IndexOf(e.Name.LocalName): Int32.MaxValue); parent.ReplaceNodes(orderedNodes); } } // using the extension method before persisting xml this.Root.Element("parentNode").OrderElements("one", "two", "three", "four");