我有一个包含 3 个字段的 C# 列表ID:Name和ParentID. 我将它绑定到树视图。现在我还有一个搜索功能,我想过滤列表并重新绑定树视图。
如果我搜索child-1-1,我的 linq 应该能够获得以下记录:parent-1, child-1-1. 所以我必须获取包含我的搜索文本的记录,而不是获取带有 ID 的记录ParentID。所有ParentIDs(roots) 都有ParentID价值0,所以我必须继续获取记录,直到ParentIDis 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...???