Сортирую список и нужно указать условие что-то вроде если "поле" == null, то сортируй по "поле2", если нет то сортируй по "поле". Как я понял конструкция ()?: в нутри Linq не работает. Вот мой набросок:
var sortList = dataList.OrderByDescending(s => s.Status.Value == Status.Yellow)
.ThenByDescending(s => s.Status.Value == Status.Green)
.ThenByDescending(s => s.Status.Value==Status.Grey|| s.Status.Value ==Status.White|| s.Status.Value == Status.Snow)
.ThenByDescending(s=>s.DrStartOnSchedule)
.ThenByDescending(s=>s.StartTn)
.ThenByDescending(s => s.WaitingOnSchedule)
.ThenBy(s=>(s.WaitingOnSchedule==Null)?s.Name:s.WaitingOnSchedule)
.ToList<MonitorModel>();
return sortList;
Реализуйте для вашего класса интерфейс IComparable<T>
, метод которого и будет осуществлять нужную логику. В итоге при попытке сортировки через LINQ он будет использовать ваш метод
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть строка, которая может иметь следующий вид, числа в конце строки каждый раз разные:
И снова к вопросу, надо ли тестировать и использовать статические методыЧто-то эта тема опять всплыла: раз, два
Как правильно сохранить html блок и использовать его как переменную в других файлах? Задача автоматизировать добавление некоторых кусков...