Comment puis-je trier la liste générique DESC et ASC ?

Comment puis-je trier la liste générique DESC et ASC ?

Avec Linq

var ascendingOrder = li.OrderBy(i => i);
var descendingOrder = li.OrderByDescending(i => i);

Sans Linq

li.Sort((a, b) => a.CompareTo(b)); // ascending sort
li.Sort((a, b) => b.CompareTo(a)); // descending sort

Notez que sans Linq, la liste elle-même est triée. Avec Linq, vous obtenez un énumérable ordonné de la liste mais la liste elle-même n'a pas changé. Si vous voulez muter la liste, vous devez changer les méthodes Linq en quelque chose comme

li = li.OrderBy(i => i).ToList();

Sans Linq :

Croissant :

li.Sort();

Décroissant :

li.Sort();
li.Reverse();

sans linq, utilisez Sort() puis Reverse() il.