¿Ordenar descendiendo en expresión Lambda?

Resuelto silent asked hace 15 años • 6 respuestas

Lo sé en gramática normal de Linq, orderby xxx descendinges muy fácil, pero ¿cómo hago esto en una expresión Lambda?

silent avatar Oct 28 '09 13:10 silent
Aceptado

Como dice Brannon, es OrderByDescendingy ThenByDescending:

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

es equivalente a:

var query = people.OrderByDescending(person => person.Name)
                  .ThenByDescending(person => person.Age)
                  .Select(person => person.Name);
Jon Skeet avatar Oct 28 '2009 06:10 Jon Skeet

Usar System.Linq.Enumerable.OrderByDescending()?

Por ejemplo:

var items = someEnumerable.OrderByDescending();
Brannon avatar Oct 28 '2009 06:10 Brannon

Prueba esto:

List<int> list = new List<int>();
list.Add(1);
list.Add(5);
list.Add(4);
list.Add(3);
list.Add(2);

foreach (var item in list.OrderByDescending(x => x))
{
    Console.WriteLine(item);                
}
 avatar Oct 28 '2009 06:10

Pruebe esto de otra manera:

var qry = Employees
          .OrderByDescending (s => s.EmpFName)
          .ThenBy (s => s.Address)
          .Select (s => s.EmpCode);

Consultable. Luego por

Sujit avatar Sep 12 '2012 02:09 Sujit