日期:2014-05-16  浏览次数:20672 次

datatable.select()导致堆栈溢出的问题(急用)
 private void BindTree(DataTable dtSource, TreeNode parentNode, string parentID)
        {
            DataRow[] rows = dtSource.Select(string.Format("ParentCode={0}", parentID));
            foreach (DataRow row in rows)
            {
                TreeNode node = new TreeNode();
                node.Text = row["Name"].ToString();
                node.Value = row["Code"].ToString();
                BindTree(dtSource, node, row["Code"].ToString());
                if (parentNode == null)
                {
                    
                  TreeView1.Nodes.Add(node);
                }
                else
                {
                    parentNode.ChildNodes.Add(node);
                }
            }
        }
在网页后台写了一个treeview绑定数据的递归方法,在运行的时候出现堆栈溢出的提示,求大神指教!
------解决方案--------------------
你可以尝试加上单引号


string.Format("ParentCode='{0}'",parentID)

------解决方案--------------------
菜单 调试--窗口--输出
System.Diagnostics.Debug.WriteLine(string.Format("ParentCode={0} code={1}", parentID,row["Code"]));