public async Task <IHttpActionResult> Post(string moniker, PlayerModel model) { try { if (ModelState.IsValid) { var team = await _repository.GetTeamByMonikerAsync(moniker); if (team == null) { return(NotFound()); } var player = _mapper.Map <Player>(model); player.Team = team; _repository.AddPlayer(player); if (await _repository.SaveChangesAsync()) { var newModel = _mapper.Map <PlayerModel>(player); return(CreatedAtRoute("GetPlayerByTeam", new { id = player.PlayerId }, newModel)); } return(InternalServerError()); } } catch (Exception ex) { return(InternalServerError(ex)); } return(BadRequest(ModelState)); }
public async Task <IHttpActionResult> Get(string moniker, bool includePlayers = false) { try { var results = await _repository.GetTeamByMonikerAsync(moniker, includePlayers); if (results == null) { return(NotFound()); } return(Ok(_mapper.Map <TeamModel>(results))); } catch (Exception ex) { return(InternalServerError(ex)); } }