2017-10-18 41 views
-2

我想在我形成LINQ语句后添加语句。不过,我在验证代码正确后得到此错误。为什么会导致错误?获取委托不使用LINQ时出现1参数错误

enter image description here

 query3 = query3.Where(a => a.product_group_id.Contains(1)); 

我添加使用System.Linq.Dynamic的;在顶端。

+0

提示 - 查看您提供的参数的数量。 –

+0

我认为原因是产品组ID是int? <<那就是为什么布尔值不能包含1 –

+0

。在哪里((a,e)=> ...) –

回答

0

尝试:

var query3 = query3.Where(a => a.product_group_id == 1).Select(i=>i).ToList(); 

。凡()返回IEnumerable的。你不能将Contains和Where混合在一起,因为第一个返回bool,而不是int。

尝试.Any()如果​​您想检查db是否具有指定条件的元素。

bool query3 = query3.Any(a => a.product_group_id == 1); 

.Contains()返回bool。它只检查对象是否存在。

bool query3 = query3.Contains(yourProduct);