如何在C#中解决这个错误?

mj-*_*ami 18 c# linq linq-to-entities c#-4.0

使用以下代码时出错

var v1 = from P in db1.QuranWordsNews where P.Aye == perId select P;
var vv = v1.LastOrDefault(); // The error occurs here
Run Code Online (Sandbox Code Playgroud)

消息:

LINQ to Entities无法识别方法'TashihQuran.QuranWordsNew LastOrDefaultQuranWordsNew'方法,并且此方法无法转换为商店表达式.

Ali*_*ghi 45

也许更好的答案在这里:

var vv = v1.OrderByDescending(rec => rec.Id).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

从数据库中获取所有记录只使用最后一条记录并不好.


phi*_*ler 35

我猜你还在工作IQueriable.试试吧

var vv = v1.ToList().LastOrDefault();
Run Code Online (Sandbox Code Playgroud)

或者,更优雅

var vv = v1.AsEnumerable().LastOrDefault();
Run Code Online (Sandbox Code Playgroud)