У меня есть список объектов, которые сгруппированы по определенному свойству. Мне нужно отсортировать этот список на основе других свойств, но он всегда должен сохранять группировку. Так, например, если список выглядит примерно так:
{ id=1, partNumber = 100 }
{ id=2, partNumber = 500 }
{ id=2, partNumber = 300 }
{ id=2, partNumber = 600 }
{ id=3, partNumber = 550 }
{ id=3, partNumber = 990 }
{ id=4, partNumber = 200 }
{ id=5, partNumber = 300 }
тогда результат после сортировки по возрастанию номера детали будет:
{ id=1, partNumber = 100 }
{ id=4, partNumber = 200 }
{ id=5, partNumber = 300 }
{ id=2, partNumber = 400 }
{ id=2, partNumber = 500 }
{ id=2, partNumber = 600 }
{ id=3, partNumber = 550 }
{ id=3, partNumber = 990 }
Сортирует по минимальному номеру PartNumber в каждой группе (или максимальному, если сортировка происходит по убыванию), но должна оставаться сгруппированной по ID. Я пробовал различные комбинации .OrderBy () и .GroupBy (), но я не могу получить то, что мне нужно.