OrderBy / ThenBy looping - Listas anidadas en C #
Tengo una lista anidada,
List<List<String>> intable;
donde me gustaría ordenar todas las columnas. El problema es que el número de columnas depende de la entrada del usuario.
Ordenar la lista de esta manera funciona bien (suponiendo 4 columnas para este ejemplo)
var tmp = intable.OrderBy(x => x[0]);
tmp = tmp.ThenBy(x => x[1]);
tmp = tmp.ThenBy(x => x[2]);
tmp = tmp.ThenBy(x => x[3]);
intable = tmp.ToList();
Pero, cuando lo puse en un bucle, así:
var tmp = intable.OrderBy(x => x[0]);
for (int i = 1; i <= 3; i++)
{
tmp = tmp.ThenBy(x => x[i]);
}
intable = tmp.ToList();
ya no funciona correctamente y clasifica solo la cuarta columna.