在 linq.js 中需要查询列表中的列表

In linq.js in need a query for list inside list

我的列表如下:

var a=[   
  {col1:"a", list:[{subCol:"s1"},{subCol:"s2"}]},   
  {col1:"b", list:[{subCol:"s1"},{subCol:"s2"}]}
]

这里是列表中的列表。为此,我想要一个查询,例如在此处输入代码

linq(a).where("$.col1=='a' && $.list.subCol=='s1'")

我试过这种语法,但输出的是空列表。这是正确的吗?

list 是一个对象数组。我想您正在尝试检查列表中是否有任何项目具有 subCol s1。您必须检查项目。

var query = Enumerable.From(a)
    .Where("$.col1 === 'a'")
    .Where("Enumerable.From($.list).Any(\"$.subCol === 's1'\")")
    .ToArray();