-2

我需要的是订购 IQueriable(LINQ to SQL 方法的结果)并在定义count时返回第一个count元素。我使用以下代码:

IOrderedQueryable<MainLog> list = logs.OrderByDescending(item => item.Time);
if (count > 0) list = list.Take(count).OrderByDescending(item=>item.Time);

它工作正常,但我不喜欢两次调用 OrderByDescending。我可以在不破坏订单且不重复订购的情况下让它变得更好吗?

4

1 回答 1

2

绝对不需要第二个OrderByDescending。只需将其删除:

IQueryable<MainLog> list = logs.OrderByDescending(item => item.Time); 
if (count > 0)
    list = list.Take(count);
于 2012-09-10T07:24:26.187 回答