Пример #1
0
        private async Task FetchCalendarAsync()
        {
            var days      = 7;
            var startDate = StartOfWeek(DateTime.Today, DayOfWeek.Monday);
            var endDate   = startDate.AddDays(days);

            ThisWeek = (from day in await traktService.GetCalendarAsync(startDate.ToUniversalTime().AddDays(-1), days + 1, extended: TraktExtendEnum.IMAGES)
                        from item in day.Value
                        let airDate = DateTime.Parse(item.Airs_At, CultureInfo.InvariantCulture, DateTimeStyles.AdjustToUniversal)
                                      where airDate >= startDate && airDate <= endDate
                                      group item.Episode by airDate.DayOfWeek into groupItem
                                      orderby groupItem.Key
                                      select new GroupedEpisodes <DayOfWeek>
            {
                Key = groupItem.Key,
                Episodes = groupItem.ToList()
            }).ToList();
        }