by the3factory
3/3/2008 10:36:00 PM
Employees.xml
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<employees>
<employee id="1">
<name>
<firstName>Nancy</firstName>
<lastName>lastName</lastName>
</name>
<city>Seattle</city>
<state>WA</state>
<zipCode>98122</zipCode>
</employee>
</employees>
Demo:
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Xml" %>
<script runat="server">
void Page_Load(object sender, EventArgs e)
{
//Location of XML file
string xmlFilePath = "Employees.xml";
string employeeID = "";
try
{
//Get reference to the XmlReader object
using (XmlReader reader = XmlReader.Create(xmlFilePath))
{
lblResult.Text = "<b>Employees</b>";
lblResult.Text += "<ul/>";
string result;
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element)
{
if (reader.Name == "employee")
{
employeeID = reader.GetAttribute("id");
}
if (reader.Name == "name")
{
lblResult.Text += "<li>" + "Employee - " + employeeID;
lblResult.Text += "<ul>";
lblResult.Text += "<li>ID - " + employeeID + "</li>";
}
if (reader.Name == "firstName")
{
lblResult.Text += "<li>First Name - " + reader.ReadString() + "</li>";
}
if (reader.Name == "lastName")
{
lblResult.Text += "<li>Last Name - " + reader.ReadString() + "</li>";
}
if (reader.Name == "city")
{
lblResult.Text += "<li>City - " + reader.ReadString() + "</li>";
}
if (reader.Name == "state")
{
lblResult.Text += "<li>State - " + reader.ReadString() + "</li>";
}
if (reader.Name == "zipCode")
{
lblResult.Text += "<li>Zipcode - " + reader.ReadElementContentAsInt().ToString() + "</li>";
}
}
else if (reader.NodeType == XmlNodeType.EndElement)
{
if (reader.Name == "employee")
{
//Close the open formatting tags
lblResult.Text += "</ul>";
lblResult.Text += "</li>";
}
}
}
lblResult.Text += "</ul>";
}
}
catch (Exception ex)
{
lblResult.Text = "An Exception occurred: " + ex.Message;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Processing the Data in an XML File</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:label id="lblResult" runat="server" />
</div>
</form>
</body>
</html>