【发布时间】:2015-07-25 13:32:30
【问题描述】:
您好,我正在使用一个 linq 查询,它抛出错误 LINQ to Entities 无法识别方法 'System.String ToString(Int32)' 方法,并且此方法无法转换为存储表达式。
List<string> resultMap = (from item in mapResult
select Convert.ToString(item.ResultDE)).ToList();
在下面的语句中抛出错误
List<Result_DE> resultList = (from result in db.Result_DE
where result.IsActive == "1"
&& resultMap.Contains(Convert.ToString(Convert.ToInt32(result.ID)))
select result).ToList();
请告诉我编写此查询的正确方法。
【问题讨论】:
-
我已尝试使用以下语句。它执行但没有输出
List<Result_DE> resultList = (from result in db.Result_DE where result.IsActive == "1" && resultMap.Contains(SqlFunctions.StringConvert(result.ID)) select result).ToList(); -
您正在将字符串转换为 int 并再次转换回字符串?
-
result.ID的属性是什么
-
result.ID 的类型是什么?
-
我正在将字符串转换为 int 并再次转换回字符串,因为没有任何效果,所以我尝试了各种组合
标签: c# .net linq entity-framework compiler-errors