我正试图围绕动态嵌套谓词表达式。这不太好。
基本上我需要能够在一组固定的属性上创建动态查询,但需要在动态(并且可能无限制)的(嵌套)级别上创建动态查询。
以家谱为例,我应该能够编写查询以获得以下任何一个结果:
我可以手工编写类似的东西,效果很好。
var pred = PredicateBuilder.True<db.Entity>();
pred = pred.And(n =>
n.Children.Where(
m => m.Children.Where(
o => o.Name.Contains("John")
).Any()
).Any()
);
问题是如何在任意数量的嵌套级别上使用混合属性和运算符动态创建上述代码?