Linq - At least one object must implement IComparable.
Linq...
At least one object must implement IComparable.
Элементы списка - однотипные, IComparable имплементирован для элементов списка (ООП нарушена).
Выполняется сортировка элементов по двум полям:
var lst = list.OrderBy(x => x.T1).ThenBy(x => x.T2);
Не догоняю где именно нужна компарация...
Я бы предположил, что сравниваемые поля тут T1 и T2, соответственно они и должны имплементировать IComparable.
а что такое "list"? это - integer, DataTime или что-то еще? народ не видит и неудомевает. вставьте где-нибудь list.GetType().ToString() и покажите, что там будет за строчка.
В листе содержится что-то типа такого:
class SomeType { public <some type> T1 { get; } public <some (other) type> T2 { get; } }
И скорее всего <some type> и/или <some (other) type> не имплементируют IComparable.
Потому как где-то не имплементировано IComparable.
Мой вопрос был - где? Бо, для элементов IList все было прописано.
list...
хммм... ну наверное имплементация IList.
Кстати, если встретишь dictionary, то это скорее всего будет имплементация IDictionary...
Да и без разницы что там - был бы IEnumerable имплементирован...
Читаю следующее:
Linq... At least one object must implement IComparable.
остальное воспринимается как некое пояснение. В жисть бы не додул, что приведенный код именно то Linq о котором речь. Ожидал запрос к базе.