public async Task <ActionResult <Music> > Delete( [FromServices] DataContext context, [FromServices] MusicRepository repository, int id) { try { var music = await repository.GetByIdAsync(id); if (music == null) { return(NotFound(new { message = "A música não foi localizada." })); } repository.Delete(music); await context.SaveChangesAsync(); return(Ok()); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError, new { message = ErrorMessage.Internal })); } }
public async Task <ActionResult <Music> > GetById([FromServices] MusicRepository repository, int id) { try { return(Ok(await repository.GetByIdAsync(id))); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError, new { message = ErrorMessage.Internal })); } }
public async Task <ActionResult <Music> > Put( [FromServices] DataContext context, [FromServices] MusicRepository repository, [FromBody] UpdateMusicCommand command, int id) { try { var music = await repository.GetByIdAsync(id); if (music == null) { return(NotFound(new { message = "A música não foi localizada." })); } music.Singer = command.Singer; music.Title = command.Title; music.Reminder = command.Reminder; music.Lirycs = command.Lirycs; music.Notation = command.Notation; music.Video = command.Video; music.Play = command.Play; music.LastModifiedDate = DateTime.Now; repository.Update(music); await context.SaveChangesAsync(); return(Ok(new { music })); } catch (Exception) { return(StatusCode(StatusCodes.Status500InternalServerError, new { message = ErrorMessage.Internal })); } }