2013年9月25日 星期三

[ASP]無限層樹狀結構的製作與遞回的應用

有時候我們需要做出類似檔案總管一樣
可以有無限層的樹狀結構
但是要怎麼設計呢
一、資料表:
其實無限層的資料表的設計非常簡單
資料表中只需要兩個欄位
Node:節點
Parent:該節點的父節點
例如以下的樹狀結構
Root
|A
||A1
|||甲
|||乙
|||丙
|||丁
||A2
||A3
|B
||B1
||B2
|C
||C1
||C2
||C3
||C4
資料表內容就會是這樣
Node    Parent
----------------
A       Root
A1      A
甲      A1
乙      A1
丙      A1
丁      A1
A2      A
A3      A
B       Root
B1      B
B2      B
C       Root
C1      C
C2      C
C3      C
C4      C
藉著兩個欄位就能夠記錄整個數的狀況
但是要把她展開還原成樹
需要怎麼運作呢
這個就必須要運用到遞迴的觀念了
二、遞回介紹
以下這個是藍色小舖中QQ大對於遞迴的介紹
http://www.blueshop.com.tw/article/show.asp?cde=ATL20050513224130PL0
三、程式範例:
以下這個則是ASP中實現樹狀結構遞迴的程式範例
http://www.blueshop.com.tw/download/show.asp?pgmcde=PGM20050914140550XNH
希望對大家有所幫助
以上文章擷取於http://www.dotblogs.com.tw/topcat/archive/2008/03/04/1174.aspx