我试图在我的数据库中找到满足两个条件的对象,我在stackoverflow上搜索并发现这个one看起来与我需要的完全一样。但是,我有这段代码:
if (db.MinimumProductInfo.Find(pc => pc.ItemCode == productInfoWithNote.ItemCode && pc.Region == productInfoWithNote.Region))
我收到此错误:
无法将Lambda Expression转换为' object []'因为它不是 代表类型。
MinimumProductInfo是我的类,productInfoWithNote是我传递给方法的视图模型。
答案 0 :(得分:1)
尝试使用FirstOrDefault
,如果没有符合条件的对象,将返回null
:
var myObject = db.MinimumProductInfo.FirstOrDefault(pc => pc.ItemCode ==
productInfoWithNote.ItemCode && pc.Region == productInfoWithNote.Region);
if(myObject != null)
{
// use your object here
}
注意:Find
方法返回第一个匹配元素(如果存在),如果不存在,它将返回元素类型的默认值,并且您正在使用它,就像它将返回一个布尔值。