OrderBy descending in Lambda expression?

silent picture silent · Oct 28, 2009 · Viewed 319.8k times · Source

I know in normal Linq grammar, orderby xxx descending is very easy, but how do I do this in Lambda expression?

Answer

Jon Skeet picture Jon Skeet · Oct 28, 2009

As Brannon says, it's OrderByDescending and ThenByDescending:

var query = from person in people
            orderby person.Name descending, person.Age descending
            select person.Name;

is equivalent to:

var query = people.OrderByDescending(person => person.Name)
                  .ThenByDescending(person => person.Age)
                  .Select(person => person.Name);