LINQ to Entities无法识别方法' System.String get_Item(Int32)'方法,并且此方法无法转换为商店表达式

时间:2017-04-08 21:47:33

标签: c# database linq exception

我试图通过linq查询从数据库中获取价格,但这个异常不断出现,我不知道为什么。 数据类型相同,都是小数。

newOrder.Cmimi = Convert.ToDecimal(context.Produktets.Where(c=>c.Emri_Produktit == prodName[0]).Select(c => c.Cmimi).First());

有人可以帮忙吗?????

1 个答案:

答案 0 :(得分:1)

看起来您在linq查询中使用数组索引器,并且实体的linq无法将prodName[0]转换为SQL。您可以尝试将值存储在变量中,并在查询中使用它:

var name = prodName[0];
newOrder.Cmimi = Convert.ToDecimal(context.Produktets
                                          .Where(c => c.Emri_Produktit == name)
                                          .Select(c => c.Cmimi).First());