XPathDocument против XmlDocument

Я разрабатываю движок для ведения блогов в ASP.NET, и один из репозиториев реализован для использования XML-файлов в качестве хранилища данных. репозиторий XML будет в основном использоваться для локального использования и тестирования. сейчас, хотя это может быть не проблема современных компьютеров, у которых много доступной памяти и вычислительной мощности, но, тем не менее, я хотел знать некоторые конкретные детали:

  • XPathDocument - это документ только для чтения, тогда как XmlDocument - для чтения / написать документ. Следовательно, является ли XPathDocument более легким, чем XmlDocument, поскольку в нем отсутствуют возможности записи?
  • Я точно знаю, что когда вы загружаете XML-документ с помощью XmlDocument, он загружает весь документ в память, что может быть проблемой, если размер документа большой . XPathDocument делает то же самое? Если да, как я могу прочитать отдельный узел или набор узлов из XML-документа, не загружая сначала весь документ в память? Я знаю, что могу использовать XmlTextReader, но это означает, что мне нужно анализировать весь документ при последовательном доступе к узлам. Я хочу иметь возможность запрашивать XML-документы с выражением XPath.

В любом случае, если размер графов объектов не сильно различается (XmlDocument и XPathDocument), не помешает просто выполнить работу, но я хотите реализовать здесь наилучшее возможное решение.

7
задан halfer 15 December 2018 в 20:43
поделиться