首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在c#中使用datatable父表和子表将数据库中的数据结点到树中

如何在c#中使用datatable父表和子表将数据库中的数据结点到树中
EN

Stack Overflow用户
提问于 2018-07-23 23:19:53
回答 1查看 74关注 0票数 0

我如何从数据库中获取数据到树中,并以父子关系的方式显示它,我尝试了下面的代码,得到了不准确的结果100%

代码语言:javascript
复制
    id     name        parent_id
--------------------------------------
    1      Banks        0
    2      Cars         0
    11     Bank1        1
    12     Bank2        1
    111    Acoount1     11
    112    Account2     11
    113    Account3     11
    21     Car1         2
    22     Car2         2
    23     Car3         2

我希望数据是这样的

代码语言:javascript
复制
-Banks
   -Bank1
      -Account1
      -Account2
      -Account3
   -Bank2
-Cars
   -Car1
   -Car2
   -Car3

我通过存储过程从数据库获取数据到DataTable,这是代码

代码语言:javascript
复制
ALTER PROC [dbo].[GET_ALL_ACCOUNTS]

AS


SELECT * FROM ACCOUNTS

我想使用datatable中的数据

代码语言:javascript
复制
DataTable dt = new DataTable();
dt = account.GET_ALL_ACCOUNTS();
foreach (DataRow dr in dt.Rows)
{

   TreeNode node = new TreeNode(dr["id"].ToString());

   node.Nodes.Add(dr["name"].ToString());
   node.Nodes.Add(dr["parent_id"].ToString());

   treeView1.Nodes.Add(node);

}

我希望有人能帮助我

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-23 23:42:33

您的foreach没有任何与树相关的逻辑。您必须基于从DataTable返回的idparent_id构造一个有效的Tree。以this逻辑为例,对其进行修改以满足您的需求。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51482241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档