2009-08-25 18 views
0

内部に階層を持つ1つのテーブルがあります。私はActiveRecordを使用しています。これを階層的なコレクションに変換して、WinFormsやWPFのツリービューにバインドする方法はありますか?サブソニック3階層コレクションの作成?

ありがとうございました。

ID Name ParentID 
1 ALL 1 
2 ARGENTINA 1 
15 AUSTRALIA 1 
16 NW 15 
17 BLACKTOWN 16 
18 CORLETTE 16 
19 PRIMBEE 16 
20 TWEED HEADS 16 
21 QL 15 
22 ASHMORE 21 
23 ROBERTSON 21 
24 TOOWOOMBA 21 
25 TRINITY BEACH 21 
26 UNITED STATES 1 
27 AK 26 
28 CA 26 
29 NJ 26 
30 NIKISKI 27 
31 AMADOR CITY 28 
32 MOSS BEACH 28 
33 Essex 29 
34 Newark 33 
35 Ampere 33 
36 Avondale 33 
37 Beaufort 33 

答えて

3

部分クラスを作成し、子(または意味を成すもの)を追加します。

public IList<MyClass> Children. 

その後、どこかの方法で(あなたのレポでは、BLL、何でも)、ループおよび負荷:

var items=MyClass.All().ToList(); 

items.ForEach(x=>x.Children=items.Where(y=>y.ParentID==x.ID).ToList());