ID、Nameおよびの 3 つのフィールドを持つ C# リストがありParentIDます。ツリービューにバインドしています。現在、リストをフィルタリングしてツリービューを再バインドする検索機能もあります。
を検索するchild-1-1と、linq は次のレコードを取得できるはずです: parent-1, child-1-1. そのため、検索テキストを含むレコードを取得する必要がありParentID、この時点で ID を持つレコードを取得する必要があります。すべてParentIDの s(ルート) にはParentID値0があるため、 になるまでレコードを取得し続ける必要ParentIDがあり0ます。
データの例:
ID Name ParentID
1 parent-1 0
2 parent-2 0
3 child-1-1 1
4 child-1-2 1
5 child-2-1 2
私の質問は、上記のようなレコードを取得するための LINQ 式を取得するにはどうすればよいですか?
私はのようなものを意味しますかvar mydata = from p in this.mylist where...?