XmlDataDocument Object Overview
There is one .NET object that combines
an XML view with a DataSet
—the
XmlDataDocument
. The
XmlDataDocument
inherits from
XmlDocument
, so it provides the same node-based
iteration ability and XPath querying methods. It also provides a
single additional property,
XmlDataDocument.DataSet
, which provides the
relational representation of XML data.
When using the XmlDataDocument
, you can start with
either an XML document or a DataSet
. To create an
XmlDataDocument
based on a
DataSet
, use the overloaded constructor that
accepts a DataSet
instance:
XmlDataDocument dataDoc = new XmlDataDocument(ds);
Although you can use the XmlDataDocument.Nodes
collection to modify the information in the
DataSet
, it becomes much more difficult to take
into account referential integrity and other database-specific
concepts. It can be useful if you want to execute an XPath query or
perform an XSLT transform (as shown in the next two examples) or take
advantage of some other XML-specific feature. However, it
won’t replace the tasks you can accomplish through
the DataSet
model.
Another useful role for the XmlDataDocument
is to
provide a DataSet
projection on an XML file. To
use this approach, you create the XmlDataDocument
,
load a schema into the DataSet
(this is a required
step), and then load the XML file using the
XmlDataDocument.Load( )
method:
XmlDataDocument dataDoc = new XmlDataDocument(); dataDoc.DataSet.ReadXmlSchema("myschema.xsd"); dataDoc.Load("myfile.xml")
The primary ...
Get ADO.NET in a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.