Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Entity framework 组合N表达式<;Func<;汽车,布尔>&燃气轮机;使用Linq/Entity framework 6查询单个查询中的条件_Entity Framework_Linq_Entity Framework 6_Func - Fatal编程技术网

Entity framework 组合N表达式<;Func<;汽车,布尔>&燃气轮机;使用Linq/Entity framework 6查询单个查询中的条件

Entity framework 组合N表达式<;Func<;汽车,布尔>&燃气轮机;使用Linq/Entity framework 6查询单个查询中的条件,entity-framework,linq,entity-framework-6,func,Entity Framework,Linq,Entity Framework 6,Func,我试图将N个条件组合成一个表达式。 主要目的是过滤IQueryable 来自web请求的过滤器可能如下所示: 汽车应该是: 1990年或之前的绿色奥迪 2000年或之前生产的蓝色大众汽车 2000年以前的粉红色奔驰车 ??之前的颜色和构建?(N个过滤器) 它们都有两个相同的条件,唯一的变化是有效值 因此,我想创建一个表达式,因此我可以执行如下单个筛选器: var cars=\u context.cars.AsQueryable()//环境足迹6 var filter=//将所有筛选器组合到一

我试图将N个条件组合成一个
表达式
。 主要目的是过滤
IQueryable

来自web请求的过滤器可能如下所示: 汽车应该是:

  • 1990年或之前的绿色奥迪
  • 2000年或之前生产的蓝色大众汽车
  • 2000年以前的粉红色奔驰车
  • ??之前的颜色和构建?(N个过滤器)
它们都有两个相同的条件,唯一的变化是有效值

因此,我想创建一个
表达式
,因此我可以执行如下单个筛选器:

var cars=\u context.cars.AsQueryable()//环境足迹6
var filter=//将所有筛选器组合到一个表达式中,并与或混合
var targetCars=cars.Where(过滤器);
Tt应该以适当的方式使用Linq到SQL

重要:stackoverflow中还有其他答案,但它们只讨论组合两个表达式。这有点不同,因为我们事先不知道表达式的数量


提前非常感谢

您尝试了什么,什么不起作用?这是唯一的方法吗:?StackOverflow和internet上有大量的解决方案。只需搜索“标准构建器”或“谓词构建器”@RodrigoRodrigues我就是这么做的,这就是为什么我没有找到与我的问题类似的东西,有一些因素使我的问题有点不同。谢谢这回答了你的问题吗?