/// <summary> /// Merges the specified dto /// </summary> /// <param name="dto">The dto</param> /// <param name="culture">The culture</param> public void Merge(CurrentSeasonInfoDTO dto, CultureInfo culture) { Guard.Argument(dto, nameof(dto)).NotNull(); base.Merge(dto, culture); Year = dto.Year; StartDate = dto.StartDate; EndDate = dto.EndDate; if (dto.SeasonCoverage != null) { SeasonCoverage = new SeasonCoverageCI(dto.SeasonCoverage); } if (dto.Groups != null) { Groups = dto.Groups.Select(s => new GroupCI(s, culture)); } if (dto.CurrentRound != null) { CurrentRound = new RoundCI(dto.CurrentRound, culture); } if (dto.Competitors != null) { CompetitorsIds = dto.Competitors.Select(s => s.Id); } if (dto.Schedule != null) { Schedule = dto.Schedule.Select(s => s.Id); } }
/// <summary> /// Merges the specified dto /// </summary> /// <param name="dto">The dto</param> /// <param name="culture">The culture</param> public void Merge(CurrentSeasonInfoDTO dto, CultureInfo culture) { Contract.Requires(dto != null); base.Merge(dto, culture); Year = dto.Year; StartDate = dto.StartDate; EndDate = dto.EndDate; if (dto.SeasonCoverage != null) { SeasonCoverage = new SeasonCoverageCI(dto.SeasonCoverage); } if (dto.Groups != null) { Groups = dto.Groups.Select(s => new GroupCI(s, culture, _dataRouterManager)); } if (dto.CurrentRound != null) { CurrentRound = new RoundCI(dto.CurrentRound, culture); } if (dto.Competitors != null) { Competitors = dto.Competitors.Select(s => new CompetitorCI(s, culture, _dataRouterManager)); } if (dto.Schedule != null) { Schedule = dto.Schedule.Select(s => s.Id); } }
/// <summary> /// Initializes a new instance of the <see cref="CurrentSeasonInfoCI"/> class /// </summary> /// <param name="dto">The dto</param> /// <param name="culture">The culture</param> public CurrentSeasonInfoCI(CurrentSeasonInfoDTO dto, CultureInfo culture) : base(dto.Id, dto.Name, culture) { Guard.Argument(dto, nameof(dto)).NotNull(); Year = dto.Year; StartDate = dto.StartDate; EndDate = dto.EndDate; SeasonCoverage = dto.SeasonCoverage == null ? null : new SeasonCoverageCI(dto.SeasonCoverage); Groups = dto.Groups == null ? null : dto.Groups.Select(s => new GroupCI(s, culture)); CurrentRound = dto.CurrentRound == null ? null : new RoundCI(dto.CurrentRound, culture); CompetitorsIds = dto.Competitors == null ? null : dto.Competitors.Select(s => s.Id); Schedule = dto.Schedule == null ? null : dto.Schedule.Select(s => s.Id); }
/// <summary> /// Initializes a new instance of the <see cref="CurrentSeasonInfoCI"/> class /// </summary> /// <param name="dto">The dto</param> /// <param name="culture">The culture</param> /// <param name="dataRouterManager">The <see cref="IDataRouterManager"/> used to fetch missing data</param> public CurrentSeasonInfoCI(CurrentSeasonInfoDTO dto, CultureInfo culture, IDataRouterManager dataRouterManager) : base(dto.Id, dto.Name, culture) { Contract.Requires(dto != null); _dataRouterManager = dataRouterManager; Year = dto.Year; StartDate = dto.StartDate; EndDate = dto.EndDate; SeasonCoverage = dto.SeasonCoverage == null ? null : new SeasonCoverageCI(dto.SeasonCoverage); Groups = dto.Groups == null ? null : dto.Groups.Select(s => new GroupCI(s, culture, _dataRouterManager)); CurrentRound = dto.CurrentRound == null ? null : new RoundCI(dto.CurrentRound, culture); Competitors = dto.Competitors == null ? null : dto.Competitors.Select(s => new CompetitorCI(s, culture, _dataRouterManager)); Schedule = dto.Schedule == null ? null : dto.Schedule.Select(s => s.Id); }