-2

我想用 linq 在菜单表中接收最大 parentID。我使用这个代码:

var orderMenu = (from M in conn.Menus.ToList()
                                    where M.ParentID == _type
                                    select M.ParentID).Max();

但显示错误:

Sequence contains no elements

(表格可能是空的)

4

2 回答 2

6

该查询是完全多余的。

您要求所有元素 where M.ParentID == _type,所以Max要么什么都没有(观察到的错误),要么_type,这取决于是否存在这样的元素。

于 2013-02-27T13:22:30.097 回答
1

如果你想返回说,最大值,或者如果集合中不存在任何东西,则返回零,你可能想要使用DefaultIfEmpty()加上Max()

var orderMenu = (from M in conn.Menus.ToList()
                                select M.ParentID).DefaultIfEmpty(0).Max();
于 2013-02-27T13:23:25.987 回答