tôi có một danh sách lồng nhau,OrderBy/ThenBy looping - Danh sách lồng nhau trong C#
List<List<String>> intable;
nơi tôi muốn sắp xếp tất cả các cột. Vấn đề là số lượng cột phụ thuộc vào đầu vào của người dùng.
Phân loại danh sách như thế này hoạt động tốt (giả sử 4 cột ví dụ này)
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();
Nhưng, khi tôi đặt nó trong một vòng lặp, như thế này:
var tmp = intable.OrderBy(x => x[0]);
for (int i = 1; i <= 3; i++)
{
tmp = tmp.ThenBy(x => x[i]);
}
intable = tmp.ToList();
nó hoạt động không còn một cách chính xác và chỉ sắp xếp cột thứ tư.
Xem này [http://social.msdn.microsoft .com/forums/vi-US/linqprojectgeneral/thread/61e502b4-6795-4e51-b70e-2be642cfc413 /] (http://social.msdn.microsoft.com/forums/en-US/linqprojectgeneral/thread/61e502b4-6795 -4e51-b70e-2be642cfc413 /) –