【发布时间】:2015-10-05 03:18:12
【问题描述】:
以下返回Cannot convert lambda expression to type 'bool' because it is not a delegate type
var Products = from s in db.Products where
( from c in s.Manufacturers
where (x => (from man in model.man where man.HasValue select man.Value).Contains(c.ManufacturerID)
select c).Any()
select s;
虽然这行得通
if (model.man != null)
{
var students = from s in db.Products
where (from c in s.Manufacturers
where model.man.Contains(c.ManufacturerID)
select c).Any()
select s;
}
在第一种情况下我做错了什么? model.man 被声明为
public int?[] man { get; set; }
【问题讨论】:
-
为什么在第一个查询中有
x =>?删除它,因为那是查询语法而不是方法语法。