编程语言
首页 > 编程语言> > C# LINQ to Entities 不识别方法

C# LINQ to Entities 不识别方法

作者:互联网

C# Entity使用LINQ的注意事项

// 使用LINQ 查询
var dbStudent = _dbWrapper.GetEntities<tablestudent>().LastOrDefault(item => item.grade != null && item.grade == 80);

此时会报出以下异常
"LINQ to Entities 不识别方法“

原因是对集合的查询操作会被LINQ编译成SQL语句,此时是无法识别方法的。

可以通过以下方式来解决

// 先把数据加载至内存中,再进行LINQ 操作
var dbStudent = _dbWrapper.GetEntities<tablestudent>().ToList().LastOrDefault(item => item.grade != null && item.grade == 80);
// 也可以使用where ,再取lastordefault
var dbStudent = _dbWrapper.GetEntities<tablestudent>().Where(item => item.grade != null && item.grade == 80).LastOrDefault();

标签:dbWrapper,item,C#,识别方法,grade,Entities,LINQ,80
来源: https://blog.csdn.net/weixin_44997008/article/details/117571566