自己的开发经验还是太少了,每次都不知道怎么去解决问题,上次做个东西是无限循环的,因为不知道到底有多少,我就不管他我先查四级吧,后来改了改,用递归实现的,虽然简单,但是还是要记录一下,方便记忆
递归要满足的条件:
反复执行,调用自身
有跳出反复执行的条件,递归出口
之前做的项目中是查询某种类下的所有子类
public ActionResult GetChildIds(int id,StringBudder resRult) { var dal = new InfoSectionOperator(); var list = dal.GetList("ParentId="+id); if(list.Count()>0) { foreach(var model in list) { resRult.Append(model.Id+","); GetChildIds(model.Id,resRult); } } return Json(resRult.ToString().SubString(0,resRult.Length-1)) }
这样就可以查询出所有的子类,并追加到StringBudder中,最后输出