如果定义了 count ,我需要订购IQueriable(LINQ to SQL方法的结果)并返回第一个 count 元素。我使用以下代码:
IOrderedQueryable<MainLog> list = logs.OrderByDescending(item => item.Time);
if (count > 0) list = list.Take(count).OrderByDescending(item=>item.Time);
它工作正常,但我不喜欢两次调用OrderByDescending。我可以在不违反订单的情况下做得更好而且没有双重订购吗?
答案 0 :(得分:2)
绝对不需要第二个OrderByDescending
。只需删除它:
IQueryable<MainLog> list = logs.OrderByDescending(item => item.Time);
if (count > 0)
list = list.Take(count);