Это пример XML из MSDNXMLDOCUMENT SelectNodes (Xpath): Заказ результата
<?xml version="1.0"?>
<!-- A fragment of a book store inventory database -->
<bookstore xmlns:bk="urn:samples">
<book genre="novel" publicationdate="1997" bk:ISBN="1-861001-57-8">
<title>Pride And Prejudice</title>
</book>
<book genre="novel" publicationdate="1992" bk:ISBN="1-861002-30-1">
<title>The Handmaid's Tale</title>
</book>
<book genre="novel" publicationdate="1991" bk:ISBN="1-861001-57-6">
<title>Emma</title>
</book>
<book genre="novel" publicationdate="1982" bk:ISBN="1-861001-45-3">
<title>Sense and Sensibility</title>
</book>
</bookstore>
Когда я выбираю все книги узлы, используя следующий код, который будет порядок эти узлы имеют?
XmlDocument doc = new XmlDocument();
doc.Load("booksort.xml");
var nodeList =doc.SelectNodes("bookstore/book");
Будет ли порядок элементов в нодлисте не отличаться от порядка в xml? Гарантирован ли этот заказ?
В моем распоряжении нет информации, которую я могу использовать для сортировки. Они должны быть в том же порядке, что и в xml. – crauscher
Другие комментарии здесь утверждают, что SelectNodes возвращают узлы в порядке документа (интересно, верно ли это для xpath union), но я никогда не сталкивался с какими-либо гарантиями в msdn. Спецификации XPath 1.0 также не гарантируют порядок (вы можете увидеть эту ссылку: http://lists.xml.org/archives/xml-dev/200410/msg00005.html). –