数据库结构
web.config
<add name="Master" connectionString="Data Source=127.0.0.1;Initial Catalog=Test;User ID=sa;Password=123456;Max Pool Size=512;"/>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
public partial class Default3 : System.Web.UI.Page
{
public static string strcon = ConfigurationManager.ConnectionStrings["Master"].ToString();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CreateTree(null);
}
}
public void CreateTree(TreeNode tn)
{
if (tn == null)
{
using (SqlConnection conn = new SqlConnection(strcon))
{
string sql = "select * from tDepartment where ParentId=0";
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
conn.Open();
using (SqlDataReader dr = cmd.ExecuteReader())
{
while (dr.Read())
{
TreeNode ctn = new TreeNode();
ctn.Text = dr["DName"].ToString();
ctn.Value = dr["ID"].ToString();
TreeView1.Nodes.Add(ctn);
CreateTree(ctn);
}
}
}
}
}
else
{
using (SqlConnection conn = new SqlConnection(strcon))
{
string sql = string.Format("select * from tDepartment where ParentId={0}", tn.Value);
using(SqlCommand cmd=new SqlCommand (sql,conn))
{
conn.Open();
using (SqlDataReader dr = cmd.ExecuteReader())
{
while (dr.Read())
{
TreeNode ctn = new TreeNode();
ctn.Text = dr["DName"].ToString();
ctn.Value = dr["ID"].ToString();
tn.ChildNodes.Add(ctn);
CreateTree(ctn);
}
}
}
}
}
}
}
运行结果: