This small snippet shows how to use a XPath on a DataSet.
Here are the used classes:
DataRow
DataSet
XmlDataDocument
XmlNodeList
XmlNode
Here's the XML file:
<?xml version="1.0" encoding="utf-8"?>
<CategoryList>
<Category ID="01">
<Title>One</Title>
</Category>
<Category ID="03">
<Title>Three</Title>
</Category>
<Category ID="04">
<Title>Four</Title>
</Category>
<Category ID="02">
<Title>Two</Title>
</Category>
</CategoryList>
Finally, here's the code:
DataSet ds = new DataSet();
ds.ReadXml(Server.MapPath("file.xml"));
XmlDataDocument xmlDoc = new XmlDataDocument(ds);
XmlNodeList nodeList = xmlDoc.DocumentElement.SelectNodes("/CategoryList/Category[@ID=01]");
DataRow myRow;
foreach (XmlNode myNode in nodeList)
{
myRow = xmlDoc.GetRowFromElement((XmlElement)myNode);
if (myRow != null)
Response.Write(myRow[0]);
}
No comments:
Post a Comment