using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class left : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
GetTreeView();
}
private void GetTreeView()
{
try
{
string connectionstring = "Server=(local);uid=sa;pwd=123456;database=web";//连接SQL数据库
SqlConnection conn = new SqlConnection(connectionstring);
string sql = "select * from menu where menu_level=1 and parent_id =0";//查询一级节点
SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
DataSet ds1 = new DataSet();
adapter.Fill(ds1, "temp");
DataTable table1 = ds1.Tables["temp"];//把读取的数据放入DATATABLE中
TreeView1.Nodes.Clear();//建立根节点,遍历。
foreach (DataRow dr1 in table1.Rows)
{
TreeNode root = new TreeNode();
root.Text = dr1["menu_name"].ToString();
TreeView1.Nodes.Add(root);//建立根节点
string sql2 = "select * from menu where menu_level=2 and parent_id='" + dr1["id"] + "'";
SqlDataAdapter adapter2 = new SqlDataAdapter(sql2, conn);
DataSet ds2 = new DataSet();
adapter2.Fill(ds2, "temp2");
DataTable table2 = ds2.Tables["temp2"]; //建立子节点,遍历。
foreach (DataRow dr2 in table2.Rows)
{
TreeNode Node = new TreeNode();
Node.Text = dr2["menu_name"].ToString();
Node.Target = "main";//目标窗口和框架,需要defult设置主框架名为MAIN
Node.NavigateUrl = "list.aspx?table_name=" + dr2["talbel_name"]+"&type_id="+dr2["type_id"];
root.ChildNodes.Add(Node);//建立子节点
}
}
conn.Close();
}
catch (SqlException ex)
{
throw ex;
}
finally
{
Reseponse.Write("ok");
}
}
}
SQL脚本:
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[menu]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[menu]
GO
CREATE TABLE [dbo].[menu] (
[id] [int] NOT NULL ,
[menu_name] [varchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[menu_level] [int] NOT NULL ,
[parent_id] [int] NOT NULL ,
[talbel_name] [varchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,
[type_id] [int] NOT NULL
) ON [PRIMARY]
GO