public async Task <IActionResult> Create(NewPlayerDto player)
        {
            var team = await _worldCupRepository.GetTeamAsync(player.TeamId, includePlayers : false);

            if (team == null)
            {
                return(BadRequest(new ProblemDetailsError(StatusCodes.Status400BadRequest, $"The Team with Id {player.TeamId} does not exist.")));
            }

            if (player.Description == "Evil")
            {
                throw new ArgumentException("this is evil code");
            }

            var playerEntity = new Player
            {
                FirstName   = player.FirstName,
                Description = player.Description,
                IsTopPlayer = player.IsTopPlayer,
                TeamId      = player.TeamId
            };

            await _worldCupRepository.CreatePlayerAsync(playerEntity);

            var result = Mapper.Map <PlayerDto>(playerEntity);

            return(CreatedAtRoute(GetPlayerRoute, new { id = result.Id }, result));
        }
        public async Task <IActionResult> GetTeam(int id)
        {
            var team = await _worldCupRepository.GetTeamAsync(id, true);

            if (team == null)
            {
                return(NotFound());
            }

            var teamResult = Mapper.Map <TeamDetailsDto>(team);

            return(Ok(teamResult));
        }
Example #3
0
        public async Task <IActionResult> GetTeam(int id)
        {
            var team = await _worldCupRepository.GetTeamAsync(id, true);

            if (team == null)
            {
                return(NotFound(new ProblemDetailsError(StatusCodes.Status404NotFound)));
            }

            var teamResult = Mapper.Map <TeamDetailsDto>(team);

            return(Ok(teamResult));
        }