LINQ - 如何使用子查询进行选择

时间:2014-10-07 17:50:39

标签: linq

我的数据是:

+-----+--------+-----------+
| Id  |  Name  |  ParentId |
+-----+--------+-----------+    
|  1  |   A    |     0     |
|  2  |   B    |     0     |
|  3  |   C    |     1     |
+-----+--------+-----------+

如果LINQ有C,我该如何获得ParentId = 0

1 个答案:

答案 0 :(得分:0)

假设"类别"是集合名称,我认为这就是你需要的。

var parentCategoryIds = Collections.Where(c => c.ParentId == 0).Select(c => c.Id);

var results = Collections.Where(c => parentCategoryIds.Contains(c.ParentId));

如果你想得到这个名字,你可以做到

var names = results.Select(r => r.Name);

这三个陈述可以写成一个linq语句,但为了清楚起见我这样做了。