近日面试的给我两道题目,一道是IQ测试,第二个就是题目所言

总共两个表 department(id int not null primary key,parentid int,name char(50));

employee(id int not null foreign key(id)  references department(id) ,departmentid,name char(50));

实现的代码记录如下

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient; public partial class Default01 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
fill_Tree(); } void fill_Tree()
{ SqlConnection SqlCon = new SqlConnection("server=(local);uid=sa;pwd=sa;database=test");
SqlCon.Open();
SqlCommand SqlCmd = new SqlCommand("Select id,name from department", SqlCon);
SqlDataReader Sdr = SqlCmd.ExecuteReader();
SqlCmd.Dispose();
string[,] ParentNode = new string[, ]; int count = ; while (Sdr.Read())
{ ParentNode[count, ] = Sdr.GetValue(Sdr.GetOrdinal("id")).ToString();
ParentNode[count++, ] = Sdr.GetValue(Sdr.GetOrdinal("name")).ToString(); } Sdr.Close(); for (int loop = ; loop < count; loop++)
{
TreeNode root = new TreeNode();
root.Text = ParentNode[loop, ];
root.Target = "_blank";
root.NavigateUrl = "Default01.aspx"; SqlCommand Module_SqlCmd = new SqlCommand("Select name,id from employee where departmentid =" + ParentNode[loop, ], SqlCon); SqlDataReader Module_Sdr = Module_SqlCmd.ExecuteReader(); while (Module_Sdr.Read())
{ TreeNode child = new TreeNode(); child.Text = Module_Sdr.GetValue(Module_Sdr.GetOrdinal("name")).ToString(); child.Target = "_blank"; child.NavigateUrl = "Default01.aspx"; root.ChildNodes.Add(child); } Module_Sdr.Close(); TreeView1.Nodes.Add(root); } TreeView1.CollapseAll();
SqlCon.Close(); } protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
{ }
}

C# 中的treeview绑定数据库(递归算法)的更多相关文章

  1. c# 在datagridview中添加comboboxcolumn 绑定数据库读取显示数据

    datagridview中的comboboxcolumn 从绑定的数据库中读取显示时,只需要注意一点,就是sql语句加个 CStr() 字符串转换函数即可,如下: SELECT CStr(XXX) a ...

  2. Ext.net中Combobox如何绑定数据库中的值-通用方法

    今天在项目中再次碰到了问题,就是Combobox中的值如果是直接绑定很简单.简单添加项就行了.代码如下: <ext:ComboBox ID=" /> </Items> ...

  3. Winform中的Treeview动态绑定数据库

    http://bbs.csdn.net/topics/370139193 SQL code   ? 1 2 3 4 5 6 CREATE TABLE [dbo].[Company] (     [Id ...

  4. Ext.net中Combobox如何绑定数据库中的值

    ];      ];      " />       </Items> </ext:ComboBox>

  5. TreeView树形控件递归绑定数据库里的数据

    TreeView树形控件递归绑定数据库里的数据. 第一种:性能不好 第一步:数据库中查出来的表,字段名分别为UNAME(显示名称),DID(关联数据),UTYPE(类型) 第二步:前台代码 <% ...

  6. 理解asp.net中DropDownList编辑数据源,绑定数据库数据。

    一.理解asp.net绑定数据库 终于学习到了连接数据库部分的内容,杨中科老师视频看起来挺轻松的,如果是高清版就更ok了. 我发现我学习新的编程语言会有一个特点,都想要赶紧学习数据库,数据就是一切,有 ...

  7. silverlight中 ComboBox绑定数据库,并获取当前选定值

    silverlight中 ComboBox绑定数据库,并获取当前选定值 在silverlight中 用combobox下拉菜单绑定数据库的方法和用DataGrid绑定数据库的方法类似. page.xa ...

  8. .net中的TreeView的数据绑定与EasyUi_tree的数据绑定

    昨天看到了.net中的TreeView,学习了一波TreeView的数据绑定,联想到EasyUi中的Tree的数据,觉得里面的逻辑差不多,就总结了一下两者的数据绑定. 前端页面和必要的JS如下 < ...

  9. MVC树控件,mvc中应用treeview,实现复选框树的多层级表单控件

    类似于多层级的角色与权限控制功能,用MVC实现MVC树控件,mvc中应用treeview,实现复选框树的多层级表单控件.最近我们的项目中需要用到树型菜单,以前使用WebForm时,树型菜单有微软提供的 ...

随机推荐

  1. HDU1823-Luck and Love-二维线段树(模板)

    题目链接:http://acm.hdu.edu.cn/showproblem.php? pid=1823 好吧,给这题跪了. ..orz.... 一道非常基础的二维线段树的模板题: 可是细节非常多:尤 ...

  2. shell统计日志

    #nginx日志统计独立ip的个数: awk '{print $1}' /path-to-log-dir/access.log | sort | uniq | wc -l #查询访问最多的前10个ip ...

  3. 解析theme()

    drupal_render()只是对theme()的调用做了包装,真正做任务的还是theme(). function theme($hook, $variables = array()) { ... ...

  4. django 实现linux运维管理平台

    概述 使用django实现一个linux运维管理平台,可以实现注册登录,机器管理 ,服务器批量操作,服务器性能监控. 详细 代码下载:http://www.demodashi.com/demo/112 ...

  5. Oracle常用函数脑图

    全面的可参考(四)Oracle学习笔记—— 常见函数

  6. Spring velocity 中文乱码 解决方案

    主要有这么几步,在spring web 的  [sevlet-name]-servlet.xml文件中,修改为: 黑体字体为关键,其它根据你的实际情况配置: <!-- ============= ...

  7. C#:数据库操作(待补充)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...

  8. ajax提交数据处理总结

    一:Ajax中Get请求与Post请求的区别  http://www.cnblogs.com/oneword/archive/2011/06/06/2073533.html 二:ajax分页: 360 ...

  9. 推荐一个入门最佳Git教程

    这是我最近发现的一个针对入门Git教程,浅显易懂,点到为止,很适合初学者及使用Git的爱好者,学完该教程应付开发工作绰绰有余. http://www.liaoxuefeng.com/wiki/0013 ...

  10. Struts2的OGNL遍历数组、List、简单的Map

    一.简介 <s:iterator />可以遍历 数据栈里面的任何数组,集合等等 在使用这个标签的时候有三个属性值得我们关注      1. value属性:可选的属性,value属性是指一 ...