我有一个类的结构,它看起来像一个特定属性:获得从树中的所有对象与使用LINQ
class TestResults {
public bool IsSuccess;
public bool IsFailure;
public IList<TestResults> SubTestResults;
}
所以,测试有多个分测验,而上述捕获的结果。
我想查找所有IsFailure
= true的TestResults。
与开始:
var failures = from result in results
where result.IsFailure
select result;
这给了我这有IsFailure =真正的顶级效果,但我想所有的测试,并分测验,其中有IsFailure =真实的,并让所有的这些在列表中。有没有可以做到这一点的linq查询,或者我应该使用老式的循环?
更新: 我应该说我对这些类的使用意味着树只有2深(类的结构不受我控制)。
所以我必须:
Test1 - SubTest11
SubTest12
SubTest13
Test2 - SubTest21
SubTest22
Test3 - SubTest31
SubTest32
SubTest33
SubTest34
我需要所有那些有IsFailure =真正的测验。
什么是树的深度,只有一个或两个或任意数量? – Skurmedel 2010-07-07 16:22:43
@Skurmedel:我已经更新了包含深度信息的问题。 – 2010-07-07 16:30:08