Когда вы используете XPath поверх XmlDocument или XmlTextReader? - PullRequest
1 голос
/ 22 апреля 2009

Когда вы используете XPath поверх XmlDocument?

Я пытаюсь увидеть вещи с более высокого уровня. Есть ли ситуация, когда лучше использовать XPath поверх XmlDocument?

Ответы [ 2 ]

4 голосов
/ 22 апреля 2009

XPath и XmlDocument не являются эксклюзивными вещами. XPath - это язык, определенный W3C, чтобы разрешать запросы к XML-документам с использованием синтаксиса, похожего на путь. XmlDocument - это класс .NET, который абстрагируется от анализа XML. XmlDocument имеет такие методы, как SelectNodes и SelectSingleNode, которые принимают выражения XPath в качестве параметров и возвращают вам результаты.

Я не понимаю, почему вы, кажется, думаете, что XPath и XmlDocument нельзя использовать вместе, или, может быть, я вас полностью не понимаю.

3 голосов
/ 22 апреля 2009

Когда есть какая-то причина для необходимости XmlDocument, а не XPathDocument или XDocument, оба из которых поддерживают XPath с более легким вес в памяти моделей.

XmlReader подходит для линейного чтения документа, но не имеет немедленной поддержки XPath, но все остальные три API-интерфейса поддерживают, но они различаются в зависимости от поддержки других функций. Если вы хотите извлечь данные, рассмотрите XPathDocument (разработанный на основе XPath) или XDocument (включает подход типа LINQ to XML), а не XmlDocument.

...