我正在使用实体框架,我有一行代码,它将var转换回数据库的iint.
var record = context.enrollments.SingleOrDefault
(row => row.userId == int.Parse(UserID) && row.classId == int.Parse(ClassID));
Run Code Online (Sandbox Code Playgroud)
每当我尝试运行它时,我都会收到此错误."LINQ to Entities无法识别方法'Int32 Parse(System.String)'方法,并且此方法无法转换为商店表达式."
我也尝试过这个
var record = context.enrollments.FirstOrDefault
(row => row.userId == Convert.ToInt32(UserID)
&& row.classId == Convert.ToInt32(ClassID));
Run Code Online (Sandbox Code Playgroud)
而我收到的只是这个错误信息,"LINQ to Entities无法识别方法'Int32 ToInt32(System.String)'方法,并且此方法无法转换为存储表达式
最后我也尝试了这个,我知道这是不寻常的,但它在过去也适用于类似的情况.
var record = context.enrollments.SingleOrDefault
(row => row.userId == CommonDLL.Sanitize<int>.ConvertType(UserID)
&& row.classId == CommonDLL.Sanitize<int>.ConvertType(ClassID));
Run Code Online (Sandbox Code Playgroud)
我得到这个错误.正如你所看到的,我已经尝试了不同的东西,没有任何工作,所以任何帮助都会很棒.