public async Task <IActionResult> Update(int episodeId, [FromBody] EpisodeDto episodeDto) { if (await _episodeRepository.EpisodeNameExistsAsync(episodeDto.EpisodeName)) { return(BadRequest($"Episode with {episodeDto.EpisodeName} name exists already")); } var episode = _mapper.Map <Episode>(episodeDto); episode.Id = episodeId; _episodeRepository.UpdateEpisode(episode); await _episodeRepository.SaveChangesAsync(); return(CreatedAtAction( "GetEpisode", new { episodeId = episodeId }, episode)); }
public async Task AssignNewEpisodeToCharacter(Character character, Episode episode) { if (await _episodeRepository.EpisodeNameExistsAsync(episode.EpisodeName)) { throw new InvalidOperationException($"{episode.EpisodeName} already exists"); } _episodeRepository.CreateEpisodeAndAssignCharacter(character, episode); await _characterRepository.SaveChangesAsync(); }