我正在尝试为 用户 选择 MAX LevelId 值,然后将该值分配给变量。
在普通 SQL 中,等效项是:
SELECT MAX(LevelID) AS MaxLevel
FROM Character
WHERE (UserId = 'John')
//Check User existing Characters max level per user
int UserLevelID = 0;
var userQuery = (from o in db.Characters
where o.UserId == UserID
select o);
UserLevelID = userQuery.Max(LevelID);
问题就在这里。我不知道如何提取 levelID 的最大值
最佳答案
您可以在一个查询中完成所有操作:
var userLevelId = db.Characters.Where(o => o.UserID == UserID)
.Max(o => o.LevelID);
我已经将它从查询表达式中改掉了,因为这引入了更多的问题 - 在实际有助于可读性的地方使用查询表达式,并且扩展方法调用更易读的简单解决方案。
关于asp.net-mvc-3 - 在 linq to entity 中选择最大值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11365917/