[英]Constructing a tree structure from table?
我有一個與此問題類似的要求: What is the most effective/elegant way to parse a flat table into a tree?
就我而言,該表可能包含數百萬行,節點結構到根的深度可能約為 5 到 6,但節點的寬度可能很大,
我正在使用實體框架 C#,是否有一種快速有效的算法可以通過實體找出結構?
如果你有 DataTable,你可以嘗試這樣的事情(遞歸函數):
private void FillTree(TreeNode pnode,DataTable data)
{
DataRow[] cnodes = data.Select("catparent=" + pnode.Tag.ToString());
foreach (DataRow crow in cnodes)
{
TreeNode ctn = new TreeNode(crow["catname"].ToString());
ctn.Name = "Cat" + crow["cat_id"].ToString();
ctn.Tag = crow["cat_id"].ToString();
pnode.Nodes.Add(ctn);
FillTree(ctn, data);
}
}
這是我的表結構:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.