关于c#中使用递归
public void AddDr(DataTable dr,string clientName){
DataTable ptemp = this.getDtByName(clientName);
for (int tempi = 0; tempi < ptemp.Rows.Count; tempi++)
{
//递归查找子公司
if (!string.IsNullOrEmpty(ptemp.Rows[0][2].ToString()))
{
AddDr(dr, ptemp.Rows[0][2].ToString()); //使用递归的方式,继续查找当前公司的父公司信息
}
DataRow subdr = dr.NewRow();
for (int tempj = 0; tempj < ptemp.Columns.Count; tempj++)
{
subdr[tempj] = ptemp.Rows[tempi][tempj].ToString();
}
dr.Rows.Add(subdr);
}
}
如上述的递归中,使用后,就进入了死循环,请问,该如何改进呢?