public async Task <IActionResult> Get(int id) { var character = await _repository.FindAsync(id); if (character == null) { return(NotFound()); } return(Ok(character)); }
public async ValueTask <ActionResult> EnterActivity(string characterId, string activityId) { var character = await _characterRepository.FindAsync(new CharacterId(characterId)); if (character == null) { return(NotFound()); } character.EnterActivity(activityId); await _characterRepository.SaveAsync(character); return(NoContent()); }
public async Task <CharacterDTO> GetCharacterByIdAsync(int id) { Character character = await _characterRepository.FindAsync(id, x => x.Episodes, x => x.Episodes.Select(y => y.Episode), x => x.Friends, x => x.Friends.Select(y => y.Friend) ); return(_mapper.Map <CharacterDTO>(character)); }
public async ValueTask <ActionResult> Update(string characterId, UpdateCharacterDto dto) { var name = new CharacterName(dto.Name); var character = await _characterRepository.FindAsync(new CharacterId(characterId)); if (character == null) { return(NotFound()); } if (!IsOwner(character)) { return(Forbid()); } character.Name = name; await _characterRepository.SaveAsync(character); return(NoContent()); }
public async Task <ActionResult> Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Character character = await repository.FindAsync((int)id); if (character == null) { return(HttpNotFound()); } return(View(Tuple.Create(character, messageRepository.GetMessagesForCharacter(character.Id)))); }
public async Task UpdateCharacterAsync(IUpdateCharacterModel updateModel) { if (updateModel == null) { throw new ArgumentNullException(nameof(updateModel)); } await _updateCharacterValidator.ValidateAndThrowAsync(updateModel); Character characterToUpdate = await _characterRepository.FindAsync(updateModel.Id, x => x.Episodes); characterToUpdate.Name = updateModel.Name; await SetCharacterEpisodesAsync(characterToUpdate, updateModel.Episodes); await SetCharacterFriendsAsync(characterToUpdate, updateModel.Friends); }
public async Task DeleteAsync(int id) { Character?characterToDelete = await _characterRepository.FindAsync(id); _characterRepository.Delete(characterToDelete); }