我正在尝试从Linq获取List到实体查询
List<int> meas_i = wc.measures
.Where(meas => meas.shortname == (valueArray[i, 8] ?? "").ToString())
.Select(meas => meas.idmeasure)
.ToList<int>();
但是在执行后我获得了以下异常(不支持)消息:
未处理的类型&#39; System.NotSupportedException&#39;发生在ComplexWorkWinDraw.exe
中其他信息:LINQ to Entities无法识别该方法 &#39; System.Object Get(Int32,Int32)&#39;方法,这个方法不能 翻译成商店表达。
请帮忙。感谢所有
答案 0 :(得分:3)
尝试在查询之前将其存储在变量中:valueArray[i, 8]
string shortName = (valueArray[i, 8] ?? "").ToString();
List<int> meas_i = wc.measures
.Where(meas => meas.shortname == shortName)
.Select(meas => meas.idmeasure)
.ToList<int>();
此查询中的所有内容都必须转换为SQL。但由于此值与记录/项目无关,因此您可以在查询之前将其存储在单独的变量中。