You should use XPath when you have
an XML node in memory and you wish to navigate directly to a
particular child node. This presumes that you have either created or
loaded an XmlDocument
in memory. You can also load
an XML document directly into an XPathDocument
from a Stream
, URL, TextReader
,
or XmlReader
. This method obviates the need to
create an XmlDocument
at all, and is more
efficient than the DOM, since the XPathDocument
is
a read-only representation of the XML document.
XPath is a good substitute for
XmlReader
when you have already read an entire
document into memory, and the document is to be processed randomly.
If you have an extremely large XML document, or you wish to access it
strictly sequentially, however, there can be a performance advantage
to writing an XmlReader
client that handles
parsing events. For example, if you are only interested in a certain
node within the document, there is no need to load the entire
document into memory; you should write an
XmlReader
client to handle the specific parsing
event that indicates the node in question has been read, and skip the
rest.
18.227.79.241