public async Task<IHttpActionResult> Post(CharacterViewModel characterViewModel) { if (!ModelState.IsValid) return BadRequest("Make sure the model is valid"); var result = _repository.CreateCharacter(characterViewModel); if (result != Repository.CharacterCreationStatusCode.Created) return BadRequest(Enum.GetName(typeof(Repository.CharacterCreationStatusCode), result)); return Ok(result); }
/// <summary> /// Attempts to create a new character from the client input /// </summary> /// <param name="characterViewModel"></param> /// <returns></returns> public CharacterCreationStatusCode CreateCharacter(CharacterViewModel characterViewModel) { var character = AutoMapper.Mapper.Map<Character>(characterViewModel); var statusCode = CanCreateCharacter(character); if (statusCode == CharacterCreationStatusCode.Created) { _context.Characters.Add(character); _context.SaveChanges(Username); } return statusCode; }