LINQ to Entities无法识别方法ElementAt(i);
我正在使用方法elementat(Int32)
来获取查询结果的特定元素。
var mds = db.TDP_MissioniDestinazioni.Where(p => p.MissioneID == missioneRow.MissioneID); destinazioneRow = mds.ElementAt(i);
LINQ to Entities无法识别方法’TimeEntModel.TDP_MissioniDestinazioni ElementAt [TDP_MissioniDestinazioni]
(System.Linq.IQueryable`1 [TimeEntModel.TDP_MissioniDestinazioni],Int32)’方法,并且此方法无法转换为商店表达式。
为什么我会收到此错误,我该如何解决?
你是否乐于获取所有“早期”结果? 如果是这样,要么调用ToList()
来缓存它们,要么调用AsEnumerable()
来在每次调用时获取它们,而AsEnumerable
只是强制编译器调用Enumerable.ElementAt
而不是Queryable.ElementAt
。
可能有更好的方法(例如使用Take或Skip) – 你能提供更多关于更大图片的信息吗?
你可以简单地混合Skip
和First
来做到这一点:
mds.Skip(i).First()