CÁC GIẢI PHÁP LẬP TRÌNH C# - Trang 162

162
Chương 5: XML

break;

}

// Gọi phương thức này một cách đệ quy cho mỗi đặc tính

// (XmlAttribute là một lớp con của XmlNode).

if (xmlNode.Attributes != null) {

foreach (XmlAttribute attribute in xmlNode.Attributes) {

ConvertXmlNodeToTreeNode(attribute, newTreeNode.Nodes);

}

}

// Gọi phương thức này một cách đệ quy cho mỗi nút con.

foreach (XmlNode childNode in xmlNode.ChildNodes) {

ConvertXmlNodeToTreeNode(childNode, newTreeNode.Nodes);

}

}

}

Xét file XML dưới đây (ProductCatalog.xml):

<?xml version="1.0" ?>

<productCatalog>

<catalogName>Jones and Jones Unique Catalog 2004</catalogName>

<expiryDate>2005-01-01</expiryDate>

<products>

<product id="1001">

<productName>Gourmet Coffee</productName>

<description>The finest beans from rare Chilean

plantations.</description>

<productPrice>0.99</productPrice>

<inStock>true</inStock>

</product>

<product id="1002">

<productName>Blue China Tea Pot</productName>

<description>A trendy update for tea drinkers.</description>

<productPrice>102.99</productPrice>

<inStock>true</inStock>