Контекст
У меня есть такой POCO:
public class Schedule
{
string ScheduleType
string DayOfWeek
int Id
string Description
DateTime StartDateTime
DateTime EndDateTime
List<string> GroupedDaysOfWeek
}
И у меня есть запрос LINQ, который извлекает List<Schedule>
, который затем группирую по идентификатору , StartDateTime, EndDateTime.
schedule.GroupBy(s => new { s.Id, s.StartDateTime, s.EndDateTime })
Это дает мне несколько групп, где каждая запись в группе имеет разные DayOfWeek (ПОНЕДЕЛЬНИК, ВТОРНИК и т. Д. c), с одинаковыми Id, StartDateTime, EndDateTime, например это для каждой группы:
Schedule1 - 1/1/2020 9:00:00AM, 12/31/2021 11:59:59AM, 37, MONDAY
Schedule2 - 1/1/2020 9:00:00AM, 12/31/2021 11:59:59AM, 37, TUESDAY
Schedule3 - 1/1/2020 9:00:00AM, 12/31/2021 11:59:59AM, 37, WEDNESDAY
Schedule4 - 1/1/2020 9:00:00AM, 12/31/2021 11:59:59AM, 37, THURSDAY
Schedule5 - 1/1/2020 9:00:00AM, 12/31/2021 11:59:59AM, 37, FRIDAY
Что я хотел бы сделать: Взять эти записи на группу и объединить sh их в одну запись, используя List GroupedDaysOfWeek , например:
Schedule1 - 1/1/2020 9:00:00AM, 12/31/2021 11:59:59AM, 37, List(MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY)
Что я пробовал: Я новичок в LINQ и безуспешно пытался использовать .Select()
или .Aggregate()
после .GroupBy()
.