Объединения двух и более списков объектов по дате - C#
Формулировка задачи:
здравствуйте, столкнулся вот с такой проблемой, есть у меня класс, содержащий два свойства DateValue(Дата типа DateTime) и Value (Значение типа Object), есть список содержащий экземпляры данного класса и есть список содержащий такие списки.
пример первого списка
пример второго списка
на выходе я должен получить
там где прочерк это говорит о том, что значения в этом момент времени еще не было, ну а принцип я думаю понятен, значение должно переносится от предыдущего, если в каком либо списке дата есть, а в данном ее нету (в данном случае это числа 852,6 и 6). Хочу напомнить, что я привел пример из двух списков, их может быть максимум 16, минимум 1. Натолкните хоть на какую-нибудь толковую мысль. DateValue | Value |
9:22:05 | 852,6 |
9:22:08 | 854,3 |
9:22:11 | 856,0 |
9:22:14 | 858,7 |
DateValue | Value |
9:22:06 | 123 |
9:22:07 | 152 |
9:22:08 | 92 |
9:22:09 | 6 |
DateValue | Value1 | Value2 |
9:22:05 | 852,6 | - |
9:22:06 | 852,6 | 123 |
9:22:07 | 852,6 | 152 |
9:22:08 | 854,3 | 92 |
9:22:09 | 854,3 | 6 |
9:22:11 | 856,0 | 6 |
9:22:14 | 858,7 | 6 |
Решение задачи: «Объединения двух и более списков объектов по дате»
textual
Листинг программы
foreach(var List in ListList) ResultList = ResultList.Concat(List); var DateList = ResultList.Distinct(item->item.Data); .....//Код по формированию строк таблицы или элементов массива на основе DateList. foreach(var row in TableRows) { var CurrentDate = row[DateColumnIndex] // DateColumnIndex = 0; var CurrentRowIndex = row.Index;//ну как пример var ItemsByDate = ResultList.Where(item=>item.data=CurrentData) //и добавляю результат в сроку для этой даты. for(int ColumnIndex = 0; ColumnIndex<ItemsByDate.Count; ColumnIndex++) Table[CurrentRowIndex ,ColumnIndex] = ItemsByDate[ColumnIndex] }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д