[c#] Lista <> Pedido por orden alfabético



Answers

¿Necesita que la lista se ordene en el lugar o solo una secuencia ordenada de los contenidos de la lista? Esto último es más fácil:

var peopleInOrder = people.OrderBy(person => person.LastName);

Para clasificar en su lugar, necesitaría un IComparer<Person> o una Comparison<Person> . Para eso, es posible que desee considerar ProjectionComparer en MiscUtil .

(Sé que sigo aportando MiscUtil, solo sigue siendo relevante ...)

Question

Estoy usando C # en Framework 3.5. Estoy buscando ordenar rápidamente una List<> genérica List<> . Por el bien de este ejemplo digamos que tengo un tipo de Lista de personas con una propiedad de apellido. ¿Cómo ordenaría esta lista usando una expresión lambda?

List<Person> people = PopulateList();
people.OrderBy(???? => ?????)



También puedes usar

model.People = model.People.OrderBy(x => x.Name).ToList();



para mí esta útil guía ficticia - Clasificación en la Lista genérica - funcionó. te ayuda a entender 4 formas (sobrecargas) para hacer este trabajo con explicaciones muy completas y claras y ejemplos simples

  • List.Sort ()
  • List.Sort (Comparación genérica)
  • List.Sort (Generic IComparer)
  • List.Sort (Int32, Int32, IComparer genérico)



puedes usar linq :) usando:

System.linq;
var newList = people.OrderBy(x=>x.Name).ToList();



Related