zoukankan
html css js c++ java
asp.net无限级分类递归实现方法二
public
DataTable GetTable()
{
DataTable tb
=
new
DataTable();
tb.Columns.Add(
"
bianhao
"
, Type.GetType(
"
System.String
"
));
tb.Columns.Add(
"
name
"
, Type.GetType(
"
System.String
"
));
tb.Columns.Add(
"
trainingType
"
, Type.GetType(
"
System.String
"
));
//
Level,指定层级,加入新row时根据其上层row加一
tb.Columns.Add(
"
Level
"
, Type.GetType(
"
System.Int32
"
));
DataRow row;
DataTable tbs
=
this
.GetClass(
""
);
//
先将顶级菜单放入tb
DataRow[] TopRows
=
tbs.Select(
"
parentType = 'root'
"
);
for
(
int
i
=
0
; i
<
TopRows.Length; i
++
)
{
row
=
tb.NewRow();
row[
0
]
=
TopRows[i][
"
bianhao
"
].ToString();
row[
1
]
=
TopRows[i][
"
name
"
].ToString();
row[
2
]
=
TopRows[i][
"
trainingType
"
].ToString();
row[
3
]
=
0
;
//
0为第一级
tb.Rows.Add(row);
}
DataRow[] rows;
for
(
int
i
=
0
; i
<
tb.Rows.Count; i
++
)
//
tb.Rows.Count这个数字也是不断的在增大的,因为不断的插入新行
{
//
tb进行循环
string
strSpace
=
""
;
for
(
int
j
=
0
; j
<
Convert.ToInt32(tb.Rows[i][
3
]); j
++
)
{
//
循环嵌套对刚才的 这个循环什么作用?wjy905
strSpace
+=
"
"
;
}
rows
=
tbs.Select(
"
parentType=
"
+
"
'
"
+
tb.Rows[i][
"
bianhao
"
].ToString()
+
"
'
"
);
//
父类名称为此行的id
for
(
int
j
=
rows.Length
-
1
; j
>=
0
; j
--
)
//
倒循环,结果可以正序
{
//
对刚才的嵌套循环
row
=
tb.NewRow();
row[
0
]
=
rows[j][
"
bianhao
"
].ToString();
row[
1
]
=
strSpace
+
"
--
"
+
rows[j][
"
name
"
].ToString();
row[
2
]
=
rows[j][
"
trainingType
"
].ToString();
row[
3
]
=
Convert.ToInt32(tb.Rows[i][
3
])
+
1
;
tb.Rows.InsertAt(row, i
+
1
);
}
}
return
tb;
}
查看全文
相关阅读:
linux rar安装
ce
Hp培训学习注册攻略
Novell云计算
bigdata
Quest *nix Xwindows
Foglight 5.6.7 控制台jboss报404
view
架构-数据库访问-SQL语言进行连接数据库服务器-DB-Library:DB-Library
架构-数据库访问-SQL语言进行连接数据库服务器:SQL语言进行连接数据库服务器
原文地址:https://www.cnblogs.com/wucf2004/p/770040.html
最新文章
[Angular2 Form] Understand the Angular 2 States of Inputs: Pristine and Untouched
[Angular2 Form] Style Validation in Angular 2 Forms
[Angular2 Form] Group Inputs in Angular 2 Forms with ngModelGroup
[Angular2 Form] Create and Submit an Angular 2 Form using ngForm
[Angular2 Form] Display Validation and Error Messaging in Angular 2
[Angular2 Router] Programmatic Router Navigation via the Router API
[Angular2 Router] Configuring a Home Route and Fallback Route
[Angular2 Router] Load Data Based on Angular 2 Route Params
magento 列表页显示产品属性值的几种调用方式
hdoj 2829 Lawrence 四边形不等式优化dp
热门文章
Open War I: 怪物繁殖,行走仿真,瞄准射击...
《数据通信与网络》笔记--QoS
xml--通过SAX解析XML
4.22 注入js需要加 addjavascriptinterface
opencv 通过摄像头捕捉头部
UVA 10806 Dijkstra, Dijkstra.(费用流)
UVa 二分图匹配 Examples
经典算法:二分查找、插入排序、选择排序、冒泡排序
makefile
makefile .phony targets
Copyright © 2011-2022 走看看