当我使用查询
var NewMatchs = (from x in entity.matches select x).LastOrDefault();
Run Code Online (Sandbox Code Playgroud)
我得到这样的错误
LINQ to Entities无法识别方法'SocialSports.Models.match LastOrDefaultmatch'方法,并且此方法无法转换为商店表达式.
我的代码有什么问题???
谢谢...
LastOrDefault
Linq to Entities不支持.您可以使用以下方法实现相同目的:
var lastmatch = (from x in entity.matches select x)
// Assuming you have some kind of timestamp
.OrderByDescending(s => s.Date)
.FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)
您不能使用LastOrDefault来查询EF实体,因为它无法转换为T-SQL.
Linq to Entities并不支持所有LINQ方法.
所有支持/不支持的方法列表:
http://msdn.microsoft.com/en-us/library/bb738550.aspx
你可以试试
var NewMatchs = (from x in entity.matches select x).ToList().LastOrDefault();
Run Code Online (Sandbox Code Playgroud)
但是这将从db加载所有匹配并执行Linq到对象.
或者尝试排序并调用FirstOrDefault.
归档时间: |
|
查看次数: |
1648 次 |
最近记录: |