Asp.Net的TreeView如何绑定数据库

这是数据库idname01管理者0101部门1经理0102部门2经理0101001部门1员工0102001部门2员工管理者进入登陆后,可以看到所有的人,部门经理进入后,可... 这是数据库
id name
01 管理者
0101 部门1经理
0102 部门2经理
0101001 部门1员工
0102001 部门2员工
管理者进入登陆后,可以看到所有的人,
部门经理进入后,可以看见他手下的员工。
而员工进入后只能看见自己的信息。

我是个初学者,还请各位大虾不吝赐教!!!!
今日在线等一天!!!非常着急!!!
展开
 我来答
jizhongtianren
2008-06-03 · 超过29用户采纳过TA的回答
知道答主
回答量:65
采纳率:0%
帮助的人:0
展开全部
//TreeData里存在的你从数据库得到的数据
DataTable TreeData
DataView view = new DataView(TreeData);
foreach (DataRowView row in view)
{
//name,id就是你的数据库数据
TreeNode tn = new TreeNode(row["name"].ToString(),row["id"].ToString());
tvwProject.Nodes[0].ChildNodes.Add(tn);
}
在绑定前,你可以截取字符串判断,看是哪个级别的。
如果是01,那么你绑定的时候数据不用做筛选,如果是0101,你的数据就得做筛选,然后再绑定。
至于筛选条件,你可以用ID的长度加上字符串截取判断,看看行不行,当然这只是我的一个建议。
筛选条件,你还得自己写
cyclamen008
2008-06-03 · TA获得超过382个赞
知道小有建树答主
回答量:604
采纳率:0%
帮助的人:489万
展开全部
从数据库里读数据就不写了吧?假设你得到了一个存放数据实体数组叫emps[],里面放的全是emp实体.
foreach (Emp item in emps)
{
TreeNode pNode = new TreeNode();
if (item.ParentNodeId == 0)//父节点
{
pNode.Text = item.DisplayName;
pNode.Value = item.NodeId.ToString();
tvSide.Nodes.Add(pNode);
}//tvSide是TreeView的ID
else
{
TreeNode cNode=new TreeNode (item.DisplayName,item.NodeId.ToString());
foreach (TreeNode node in tvSide.Nodes)
{
if (item.ParentNodeId.ToString() == node.Value)
node.ChildNodes.Add(cNode);
}
}
}

权限的判断方法就多了,可以直接在读数据的时候就做好判断么,读到实体数组里的数据就是经过过滤的.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式