次のような階層データ構造があります。
表1
id | Groupname | parentId
表 2
id | nodeName | parentId
テーブル 1 の親 ID はテーブル 1 の ID を参照し、テーブル 2 の親 ID もテーブル 1 の ID を参照します。
表 1 の任意の ID から始めて、すべてのノードを出力し、すべての子グループの子をトラバースする必要があります。
今まで私はこれを持っています
int id = 1; // replace with argument
repository.Nodes.Where(n => n.ParentId == Id).ToList().ForEach(d =>
{
result.NodeList.Add(GetNodeDetails(n.Id));
});
効率的な linq の方法でこのループを実行するのを手伝ってくれる人はいますか?