加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 如何使用LINQ加载实体的最后一条记录?

发布时间:2020-12-15 03:51:50 所属栏目:百科 来源:网络整理
导读:我想从最后一个记录中获取名为“Gram”的值,并将其值放入一个变量中,而不使用任何条件. 首先我试过 int value = int.Parse(Entity.TblGold.LastOrDefault().Gram.ToString()); 第二我试过 int value = int.Parse(Entity.TblGold.Select(p = p.Gram).Last().T
我想从最后一个记录中获取名为“Gram”的值,并将其值放入一个变量中,而不使用任何条件.

首先我试过

int value = int.Parse(Entity.TblGold.LastOrDefault().Gram.ToString());

第二我试过

int value = int.Parse(Entity.TblGold.Select(p => p.Gram).Last().ToString());

我只收到这个例外:

LINQ to Entities does not recognize the method 'DataModel.TblGold LastOrDefault[TblGold](System.Linq.IQueryable``1[DataModel.TblGold])' method,and this method cannot be translated into a store expression.

解决方法

LINQ to Entities不支持Last或LastOrDefault.您可以使用ToList或ToArray迭代您的查询,然后应用上一个或您可以通过降序进行排序,然后使用第一个像:
int value = int.Parse(Entity.TblGold
                            .OrderByDescending(p => p.Gram)
                            .Select(r => r.Gram)
                            .First().ToString());

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读