XmlDocument SelectNodes(Xpath):结果顺序

这是来自MSDN的示例xml

    Pride And Prejudice   The Handmaid's Tale   Emma   Sense and Sensibility   

当我使用以下代码选择所有书籍节点时,这些节点将具有哪个顺序?

 XmlDocument doc = new XmlDocument(); doc.Load("booksort.xml"); var nodeList =doc.SelectNodes("bookstore/book"); 

nodelist中项目的顺序是否与xml中的顺序相同? 这个订单有保证吗?

是。 在reflection器中查看它,此方法最终使用XPathNodeIterator ,该文档记录为按文档顺序迭代。 http://msdn.microsoft.com/en-us/library/1212yhbf.aspx

尝试使用XPathNavigator而不仅仅是XmlDocument.Select *。 然后,您可以创建一个XPathExpression实例,并通过AddSort对其进行排序。