Я написал небольшое приложение, которое позволяет мне сравнивать две схемы базы данных, чтобы проверить различия в структуре. Все идет вплоть до деталей колонки, что приятно. Когда я сравнивал очень маленькие базы данных, у меня не было никаких проблем, но когда я начинаю сравнивать базы данных с сотнями таблиц, раздражает прокрутка вверх и вниз, чтобы найти ошибки. Первоначально я использовал KeyedCollection для хранения списка таблицы, но, поскольку он не допускает какой-либо сортировки, с тех пор я перешел на SortedList. SortedList сортирует индексы, что дает мне таблицы в алфавитном порядке, но это меньше, чем мне нужно. Что мне нужно, это класс, который позволяет мне сортировать на основе свойств объекта, а не только по значениям индекса. Я хочу перенести таблицы с ошибками в начало списка для удобства использования. У кого-нибудь есть идея, какой класс я мог бы использовать для достижения этой цели?
EDIT1: у класса List нет индекса, что очень важно для моего класса. Я попытался использовать словарь, который имеет индекс, но не имеет метода сортировки. Реализация IComparer не работает, потому что конструктор принимает только IComparer типа индекса. И поскольку IComparer - это другой класс, который не имеет доступа к внутреннему списку значений моего класса списка, я не могу сравнивать его по свойствам объекта.
EDIT2: мне нужен класс, который сортирует индекс по свойствам объекта, а не по значениям индекса, но я начинаю верить, что такого класса не существует.