【发布时间】:2013-11-25 08:04:22
【问题描述】:
场景:我有一个关键字列表,我想添加一个 Linq Where 子句来检查产品对象的描述字段是否包含所有三个关键字。
我正在尝试将以下 where 子句添加到我的查询中:
query = query.Where(product => keywords.All(product.Description.Contains));
query: 是一个 IQueryable(Product) 关键字:是一个列表 描述:是产品中的一个字段。
当我尝试运行此代码时,出现异常 .NET Framework 数据提供程序错误 1025。
我也尝试过像其他帖子一样单独创建表达式:
Expression<Func<Product, bool>> expr = product => keywords.All(product.Description.Contains);
query = query.Where(expr);
这给出了同样的错误。
PS:这是我声明 IQueryable 的方式,以防万一:
var query = from product in Entity.Products select product;
【问题讨论】:
-
请显示完整异常详情。
-
这看起来类似于:stackoverflow.com/q/9513284/1039947 - 只需尝试将
keywords.All(product.Description.Contains)更改为keywords.All(word => product.Description.Contains(word))