2つの列を持つテーブルを反復処理するのに最適な方法の例を探しています。親子
親を指定して、子が見つかった場合は、それを新しいリストに追加します。次に、今度は前の子を使用してもう一度クエリを実行しますが、現在は親として、この子に子があるかどうかを確認します...など...
これが理にかなっていることを願っています。よろしくお願いします。
私はエンティティに対してLinqでクエリを書いています。
自己参照テーブルからデータを再帰的に取得する方法を探していると思います。これは、 LINQを使用した再帰データテーブルの親-子を説明する記事です。
記事から
var q= from p in yourTable
where p.ParentID == null // well get all parents
select new
{
ParentID = p.ParentID,
child = from c in yourTable
where c.ParentID == p.ID select
new {
ChildID=c.ID,
ParentID = c.ParentID
}
};