我有这个:
var result = (from t in MyDC
where t.UserID == 6
orderby t.UpdateTime
select t.ID).Last();
基本上,我使用Linq-to-Sql并且它不支持.Last运算符。我可以检索用户的所有记录,然后使用linq到对象来获取我的值,但我想知道如何使用linq-to-sql执行此操作并仅返回一条记录。
感谢您的建议。
答案 0 :(得分:37)
只需按降序排序,然后使用.First()
代替:
var result = (from t in MyDC
where t.UserID == 6
orderby t.UpdateTime descending
select t.ID).First();
答案 1 :(得分:2)
如果您不知道要排序的是什么,也可以使用.Skip()和.Take()来减少返回的行数