private List <MazeServiceScraper.Domain.ShowDomain.Show> GetCachedShowsIfThereIsAny() { var cachedValues = _showRepository.GetShowsCreatedBeforeSecond(_mazeCacheConfig.Value.DbCacheSecond); var shows = new List <Domain.ShowDomain.Show>(); foreach (var cachedShow in cachedValues) { var dbCasts = cachedShow.Casts.Select(x => new Domain.ShowDomain.Cast(x.CastId, x.Name, x.Birthday)).ToList(); var dbShow = new Domain.ShowDomain.Show(cachedShow.ShowId, cachedShow.Name, dbCasts); shows.Add(dbShow); } return(shows); }
private Infrastructure.Database.Show CreateRepositoryShow(Domain.ShowDomain.Show show) { var dbShow = new Infrastructure.Database.Show() { Name = show.Name, ShowId = show.Id, CreatedTime = DateTime.Now, Casts = show.Casts.Select(x => new Infrastructure.Database.Cast() { Name = x.Name, Birthday = x.Birthday, CastId = x.Id }).ToList() }; return(dbShow); }
public async Task <IList <Domain.ShowDomain.Show> > GetShowAsync(GetShowRequest getShowRequest) { var shows = await _mazeService.GetShowsAsync(); var domainShows = new List <Domain.ShowDomain.Show>(); foreach (var show in shows) { var casts = await _mazeService.GetCastOfAShowAsync(show.id); var domainCasts = casts.Select(x => { var birthday = x.person.birthday != null ? DateTime.Parse(x.person.birthday) : DateTime.MinValue; return(new MazeServiceScraper.Domain.ShowDomain.Cast(x.person.id, x.person.name, birthday)); }).ToList(); var domainShow = new Domain.ShowDomain.Show(show.id, show.name, domainCasts); domainShows.Add(domainShow); } return(domainShows); }