首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

遍历access数据库,生成XML文档,该怎么解决

2012-03-28 
遍历access数据库,生成XML文档我的数据库的内容是:tbDept:ID ParentID DeptName LevelID RoleID1 0 软体研

遍历access数据库,生成XML文档
我的数据库的内容是:
tbDept:
ID ParentID DeptName LevelID RoleID
1 0 软体研发处 0 0
2 1 软体研发一部 0 0
3 1 软体研发二部 0 0
4 1 软体研发三部 0 0
5 2 软体研发一部一课 0 0
6 2 软体研发一部二课 0 0
7 3 软体研发二部一课 0 0
8 3 软体研发二部一课 0 0
9 4 软体研发三部一课 0 0
10 4 软体研发三部二课 0 0
11 5 AAA 1 1
12 5 BBB 1 1
......
28 10 RRR 2 2
我想用遍历这个tbDept,然后根据遍历的结果生成带有父子关系的XML文件,小女子望各位能人能够赐教,该如何实现这个XML文档

[解决办法]
递归生成

先读取到DataTable里面,然后

http://dotnet.aspx.cc/file/Recursion-Genernate-XML.aspx
[解决办法]
我帮你写了个,数据表就是你给出的那部分数据。

C# code
        OleDbData md = new OleDbData();        md.ExecuteReader("select * from tbDept");        XmlDocument xmlDoc = new XmlDocument();        XmlElement root = xmlDoc.CreateElement("root");        xmlDoc.AppendChild(root);        while (md.Reader.Read())        {            int parentID = Convert.ToInt32(md.Reader["ParentID"]);            XmlElement node = xmlDoc.CreateElement("node");            for (int i = 0; i < md.Reader.FieldCount; i++)                node.SetAttribute(md.Reader.GetName(i), md.Reader[i].ToString());            if (parentID > 0)            {                xmlDoc.SelectSingleNode(string.Format(@"//node[@ID='{0}']", md.Reader["ParentID"])).AppendChild(node);            }            else            {                xmlDoc.DocumentElement.AppendChild(node);            }        }        md.Close();        xmlDoc.Save(Server.MapPath("~/test.xml")); 

热点排行