asp.net 递归储存问题

来源:百度知道 编辑:UC知道 时间:2024/06/05 18:50:29
public static IList<KuMao.Goods.model.Class> GetChild(int upid,IList<KuMao.Goods.model.Class> AllCls)
{
bool boCall = false;
List<KuMao.Goods.model.Class> list = new List<KuMao.Goods.model.Class>();
for (int i = 0; i < AllCls.Count; i++)
{
if (AllCls[i].UpId==upid)
{
list.Add(AllCls[i]);
GetChild(AllCls[i].ID,AllCls);

}
}
return list;
}

如何储存递归后的list值,上面输出后只有一条数据 ……。
绝对不是只递归1次。。。

public static IList<KuMao.Goods.model.Class> GetChild(int upid, IList<KuMao.Goods.model.Class> AllCls) {
List<KuMao.Goods.model.Class> result = new List<KuMao.Goods.model.Class>();
foreach (KuMao.Goods.model.Class item in AllCls) {
if (item.UpId == upid) {
result.Add(item);
result.AddRange(GetChild(item.ID, AllCls));
}
}
return result;
}

list.AddRange(GetChild(AllCls[i].ID,AllCls));