如何将xml变成datatable

来源:百度知道 编辑:UC知道 时间:2024/07/02 21:37:43
<Web>
<info>
<title>站点</title>
<url>URL</url>
<name>Name</name>
<add>ADD</add>
<tel>Tel</tel>
<ps>Infos</ps>
<nav>
<li name="首页1" url="index1.aspx"/>
<li name="首页2" url="index2.aspx"/>
<li name="首页3" url="index3.aspx"/>
<li name="首页4" url="index4.aspx"/>
</nav>
</info>
</Web>

我想将上面<nav>中间的内容变成一个DataTable,请问怎么做?
能够直接将
<nav>
<li name="首页1" url="index1.aspx"/>
<li name="首页2" url="index2.aspx"/>
<li name="首页3" url="index3.aspx"/>
<li name="首页4" url="index4.aspx"

System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
xmlDoc.Load(Server.MapPath("XMLFile1.xml"));

System.Xml.XmlNodeList list = xmlDoc.GetElementsByTagName("li");

System.Data.DataTable dt = new System.Data.DataTable();

dt.Columns.Add("name", typeof(string));
dt.Columns.Add("url", typeof(string));

System.Data.DataRow dr = null;

foreach (System.Xml.XmlNode node in list)
{
dr = dt.NewRow();

dr[0] = node.Attributes["name"].Value;
dr[1] = node.Attributes["url"].Value;

dt.Rows.Add(dr);
}

dt就是你需要的

//补充,通过dataset.ReadXml()我尝试过,很难,因为DataSet是离线数据库,这种XML包含关系在数据库里是外键关系,最后解析出来li,估