如何获得Linq to Entity的最大ID?

c# entity-framework linq linq-to-entities

我有一个表User有一个标识列UserID ,现在什么是正确的Linq to Entity代码行,它会返回最大的UserID

我试过了:

using (MyDBEntities db = new MyDBEntities())
{
    var User = db.Users.Last();
    // or
    var User = db.Users.Max();

    return user.UserID;
}

但似乎不支持LastMax

有任何想法吗?

一般承认的答案

这样做

db.Users.OrderByDescending(u => u.UserId).FirstOrDefault();

热门答案

试试这个

int intIdt = db.Users.Max(u => u.UserId);

更新:

如果没有记录然后使用上面的代码生成异常试试这个

int? intIdt = db.Users.Max(u => (int?)u.UserId);



许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因