积极答复者
从网上找的treeview递归绑定数据库的方法,可是就是不行,头都大了,代码如下,请教高人.

问题
-
oracle数据库结构:
id(varchar32-sys_guid()) bumen(nvarchar2(50)) up_id(varchar(32))
AB95A235C8EA44DEBB89D972D01277EB a部门
2493C2B2F1D34371BCDECDFF6D0E247D b部门
4BBDBA04DDBC4A58A57302374A045CBB c部门
B7878E73BC25450A9774910B9581243C c部门1班 4BBDBA04DDBC4A58A57302374A045CBB
515C868191694EAC86E180144C685A17 c部门1班 4BBDBA04DDBC4A58A57302374A045CBB
A1A5BD97ABF8438B8A7BCE8DEDAA4BBF c部门1班 4BBDBA04DDBC4A58A57302374A045CBB
D953F0C14DAC46C1A7F38B7A3CE24214 b部门1班 2493C2B2F1D34371BCDECDFF6D0E247D
285470122951413F96B85B0664FB63C6 b部门1班 2493C2B2F1D34371BCDECDFF6D0E247D
DBF1760DF94E4B1391019B04FC71D72E e部门cs.db_Ora db = new cs.db_Ora(); DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ds = db.execute_DataSet("mis_manager", "select * from bumen");//dataset绑定 bind_Tv(null,(TreeNode)null); } } protected void bind_Tv(string parent_Id, TreeNode p_Node) { DataView dvTree = new DataView(ds.Tables[0]); dvTree.RowFilter = "up_id=" + parent_Id; foreach (DataRowView row in dvTree) { TreeNode tn1 = new TreeNode(); if (p_Node == null) { tn1.Text = row["bumen"].ToString(); //tn1.Value = row["id"].ToString(); TreeView1.Nodes.Add(tn1); //tn1.Expanded = true; bind_Tv(row["id"].ToString(), tn1); } else { tn1.Text = row["bumen"].ToString(); //tn1.Value = row["id"].ToString(); p_Node.ChildNodes.Add(tn1); //tn2.Expanded = true; bind_Tv(row["id"].ToString(), tn1); } } }