2012-04-19 4 views
1

с использованием XDocument с xpath для анализа XML , который лучше работает?Xdocument с Xpath

например. Для поиска тега и получить значение в XML

tags = xmlDoc.Descendants(xmlTag); 

или

xml.SelectSingleNode("//root/node") 

Так какой из них будет быстрее?

+0

Почему бы вам не попробовать? – Botz3000

+1

XDocument и XPath - это совершенно разные вещи ... рассмотрите возможность редактирования своего вопроса, чтобы он дал понять, что вы хотите сравнить. –

ответ

7

XPath не синтаксического анализа XML ... это запрос язык, используемый поверх любого другого XML API, который поддерживает его. (Например, вы можете использовать XPath над XmlDocument или XDocument.)

Чтобы узнать, какой запрос будет быстрее полезно, вы должны попробовать свои реально XPath и LINQ для запроса XML на образцах ваших фактического данные. Я ожидал бы, что XPath будет быстрее в некоторых ситуациях, а LINQ to XML будет быстрее в других.

Однако я был бы удивлен, если бы скорость выполнения запросов была на самом деле узким местом в вашем коде - есть ли у вас доказательства того, что это такое? Вы должны сначала спросить себя, что является наиболее читаемым. Внесите этот код, а затем посмотрите, достаточно ли он .

+0

Его просто общий вопрос для информации о XDocument, потому что я только начал работать с XDocument и tring, чтобы использовать xpath с xdocument – 0cool

+0

@Neo: Ну, вы все еще можете * использовать XPath с XDocument, но лично я считаю его более читаемым используйте предоставленные методы. –

Смежные вопросы