使用linq将最后一个元素获取到sql

本文关键字:获取 sql 元素 最后一个 linq 使用 | 更新日期: 2023-09-27 17:58:40

我有这个:

var result = (from t in MyDC
              where t.UserID == 6
              orderby t.UpdateTime
              select t.ID).Last();

基本上,我使用的是Linq到Sql,它不支持Last运算符。我可以检索用户的所有记录,然后使用linq-to-object来获取我的值,但我想知道如何使用linq--to-sql来实现这一点,并且只返回一条记录。

谢谢你的建议。

使用linq将最后一个元素获取到sql

只需降序排列,然后使用.First()

var result = (from t in MyDC  
          where t.UserID == 6
          orderby t.UpdateTime descending
          select t.ID).First();

如果您不知道排序依据,也可以使用.Skip()和.Take()来减少返回的行数