未处理的“System.StackOverflowException”类型的异常出现在 mscorlib.dll 中

gaeml 2008-09-23 11:23:38
大虾们,麻烦帮我看看到底是什么原因啊,对foreach循环不是很懂,希望能帮我解决下。谢谢了。

private void BiudTree()
{
YgmSystem.BLL.SysManage sm = new YgmSystem.BLL.SysManage();
DataTable dt = sm.GetTreeList("").Tables[0];


this.listTarget.Items.Clear();
//加载树
this.listTarget.Items.Add(new ListItem("根目录", "0"));
DataRow[] drs = dt.Select("ParentID= " + 0);


foreach (DataRow r in drs)
{
string nodeid = r["NodeID"].ToString();
string text = r["Text"].ToString();
//string parentid=r["ParentID"].ToString();
//string permissionid=r["PermissionID"].ToString();
text = "╋" + text;
this.listTarget.Items.Add(new ListItem(text, nodeid));
int sonparentid = int.Parse(nodeid);
string blank = "├";

BindNode(sonparentid, dt, blank);

}
this.listTarget.DataBind();

}
private void BindNode(int parentid, DataTable dt, string blank)
{
DataRow[] drs = dt.Select("ParentID= " + parentid);

foreach (DataRow r in drs)
{
string nodeid = r["NodeID"].ToString();
string text = r["Text"].ToString();
//string permissionid=r["PermissionID"].ToString();
text = blank + "『" + text + "』";

this.listTarget.Items.Add(new ListItem(text, nodeid));
int sonparentid = int.Parse(nodeid);
string blank2 = blank + "─";


BindNode(sonparentid, dt, blank2);
}
}
...全文
210 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhuanshen712 2008-09-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 shalen520 的回复:]
堆栈溢出,死循环了,检查下递归的退出条件
[/Quote]
递归好像有问题。单步调试一下吧。
caofan520 2008-09-23
  • 打赏
  • 举报
回复
死循环
shalen520 2008-09-23
  • 打赏
  • 举报
回复
堆栈溢出,死循环了,检查下递归的退出条件
dsr456 2008-09-23
  • 打赏
  • 举报
回复
都不知道什么地方出错,LZ还是贴出错误提示以及错误行数吧
xiaoyubujimo 2008-09-23
  • 打赏
  • 举报
回复
可以肯定的是你的递归有问题,看看有地方出现了死循环了。
gaeml 2008-09-23
  • 打赏
  • 举报
回复
解决了,原因是我的数据库的NodeID和ParentID的值相同了。

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧