树状图 无限级 递归
要做一个活的导航
代码如下:
string myTree = "{";
JLUserBLL bll = new JLUserBLL();
DataTable table = bll.PassValue();
DataView dv = new DataView(table);
string loginUser = this.loginUser.username;
var list = bll.GetMenu(loginUser);
string tree = "";
foreach (var item in list)
{
dv.RowFilter = "id=" + item.ChannelId + "";
tree = TreeDataBind(dv);
}
tree = tree.Substring(0, tree.Length - 1);
tree += "}";
public string TreeDataBind(DataView dv)
{
foreach (DataRowView drv in dv)
{
myTree += "["; //创建一个新的节点
//为新的借点设置属性
myTree += drv["DeptName"].ToString() + ",";
myTree += drv["ParentId"].ToString() + ",";
myTree += drv["id"].ToString() + ",";
myTree += drv["DeptLevel"].ToString();
myTree += "],";
//过滤数据视图 父类id = 上一级的tid
dv.RowFilter = "id=" + drv["ParentId"].ToString();
//自己调用自己
de.Add(dement);
TreeDataBind(dv);
}
de.OrderBy(e => e.DeptLevel);
return trees;
}
问题是它是倒着排序departLevel shi 3 2 1 并且 如何传给前台接收,前台如何接收 求代码! 在线等 行业数据 String 递归 导航
[解决办法]
一张表,表示树
Id pId Name Level
0 null 总公司 1
1 0 分公司一 2
2 0 分公司二 2
3 2 业务部 3
遍历时,
int level=1;
do
{
选出level=1的行集合,遍历;
每一行取出ID,搜索表中pId=ID的行,遍历,加到结果集中;
递归所有层级;
level++;
}
while(level选出的行数为0停止)
[解决办法]
你要转成json输出?