Lambda查询按日期逆转订单列表

Net*_*awk 2 linq lambda asp.net-3.5

我有这个功能,以相反的顺序显示消息列表.

 protected void setupMessages(IList<Message> Messages)
 {
     List<Message> messages = new List<Message>() ;
     messages.AddRange( Messages.OrderBy(message => message.DateAdded).Reverse());
     MessagesRepeater.DataSource = messages;
     MessagesRepeater.DataBind();
 }
Run Code Online (Sandbox Code Playgroud)

我想知道是否有办法在不调用反向方法的情况下反转lambda查询中的顺序?或者调用Reverse()是唯一的方法吗?

Nol*_*rin 6

你只想使用OrderByDescending扩展方法,而不是OrderBy.

实际上,这将是一种更有效的方法,因为它只需要一次迭代而不是两次.

messages.AddRange(Messages.OrderByDescending(message => message.DateAdded));
Run Code Online (Sandbox Code Playgroud)