1: using System;
2: using System.Collections;
3: using System.Linq;
4: using System.Web;
5: using System.Web.UI;
6: using System.Web.UI.WebControls;
7: using System.Xml.Serialization;
8: using System.IO;
9:
10: public partial class Default4 : System.Web.UI.Page
11: {
12: protected void Page_Load(object sender, EventArgs e)
13: {
14: string xmlFilePath = @"c:\Data\Category.xml";
15: XmlSerializer serializer = new XmlSerializer(typeof(Category));
16: serializer.UnknownElement += new XmlElementEventHandler(XmlSerializer_UnknownElement);//定义事件处理委托
17: TextReader reader = new StreamReader(xmlFilePath);
18:
19: Category categoryObj = (Category)serializer.Deserialize(reader);
20: reader.Close();
21:
22: Response.Write("CategoryID: " + categoryObj.CategoryID + "<br/>");
23: Response.Write("CategoryName: " + categoryObj.CategoryName + "<br/>");
24: Response.Write("Description: " + categoryObj.Description + "<br/>");
25: }
26: /// <summary>
27: /// Handles the UnknownElement event of the XmlSerializer control.
28: /// </summary>
29: /// <param name="sender">The source of the event.</param>
30: /// <param name="e">The <see cref="System.Xml.Serialization.XmlElementEventArgs"/> instance containing the event data.</param>
31: void XmlSerializer_UnknownElement(object sender, XmlElementEventArgs e)
32: {
33: Response.Write("Unknown Element:" + "<br/>");
34: Response.Write("Unknown Element Name: " + e.Element.Name + "<br/>");
35: Response.Write("Unknown Element Value: " + e.Element.InnerText + "<br/>");
36: }
37: }