public ActionResult Delete(Guid id) { Music music = _musicRepo.Get(id); Playlist playlist = _playlistRepo.Get(music.PlaylistId); if (playlist.ApplicationUserId != this.User.GetUserId()) { return(Unauthorized()); } var fileName = music.filePath.Substring(44); var filePath = Path.Combine(_appEnv.WebRootPath, "audio", music.PlaylistId.ToString(), fileName); if (System.IO.File.Exists(filePath)) { Task.Run(() => { System.IO.File.Delete(filePath); }); } _musicRepo.Delete(music.Id); _musicRepo.SaveChanges(); return(RedirectToAction(nameof(Index), new { playlistId = music.PlaylistId })); }
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 })); } }
/// <summary> /// Removes the Album request. /// </summary> /// <param name="requestId">The request identifier.</param> /// <returns></returns> public async Task <RequestEngineResult> RemoveAlbumRequest(int requestId) { var request = await MusicRepository.GetAll().FirstOrDefaultAsync(x => x.Id == requestId); var result = await CheckCanManageRequest(request); if (result.IsError) { return(result); } await MusicRepository.Delete(request); return(new RequestEngineResult { Result = true, }); }
/// <summary> /// Removes the Album request. /// </summary> /// <param name="requestId">The request identifier.</param> /// <returns></returns> public async Task RemoveAlbumRequest(int requestId) { var request = await MusicRepository.GetAll().FirstOrDefaultAsync(x => x.Id == requestId); await MusicRepository.Delete(request); }
public void Delete(int id) { _musicRepository.Delete(id); }