我有一个列表类型:
List<Concept>
--- Property
--- List<Class2>
--- --- Class2pty
--- --- Class2pty2
--- List<Class3>
--- --- Class3pty
有一个查询字符串,我需要一个新的概念列表,该列表在任何属性(嗯,一种属性)上都有该查询字符串,例如Property或Class2pty2,Class3pty ...
使用Where I can query Property但我不知道如何查询Class2pty如果匹配,则返回具有该Class2的概念
那么,我可以用一个嵌套查询来做到这一点还是我能做什么?
编辑:由于我不清楚,我举个例子
想象一下,我有一个“foo”的查询字符串,我有一个包含这 4 个项目的列表
Concept
--- Property = "foo"
--- List<Class2>
--- --- Class2pty
--- --- Class2pty2
--- List<Class3>
--- --- Class3pty
Concept
--- Property
--- List<Class2>
--- --- Class2pty = "foo"
--- --- Class2pty2
--- List<Class3>
--- --- Class3pty
Concept
--- Property
--- List<Class2>
--- --- Class2pty = "bar"
--- --- Class2pty2
--- List<Class3>
--- --- Class3pty
Concept
--- Property
--- List<Class2>
--- --- Class2pty
--- --- Class2pty2
--- List<Class3>
--- --- Class3pty = "foo"
第一个列表项在Property上有foo,在第二个项目上(想象 List< Class2 > 有大约 10 个Class2实例,其中一个(或者可能更多))在Class2Pty上有foo ,第三个项目在任何属性上都没有foo(在 Concept 实例本身和内部实例中),四个项目确实有它。
因此,当任何概念项目(包括他们的孩子)具有该foo项目的属性时,返回概念项目。在我们的例子中,1、2 和 4。
简而言之,拥有一个带有内部列表的概念列表,返回每个具有该字符串属性的概念,或者如果它们的一个子实例具有它。