C# LINQ to Entities 不识别方法

2021/6/5 12:22:29

本文主要是介绍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();


这篇关于C# LINQ to Entities 不识别方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程