/// <summary> /// DeleteTrackButton action /// </summary> /// <param name="sender"></param> /// <param name="e"></param> /// <remarks> /// Delete indicated track /// </remarks> private void DeleteTrackButton_Click(object sender, RoutedEventArgs e) { var trackRepo = new TrackRepository(); Track track = displayTracks.SelectedItem as Track; trackRepo.DeleteTrack(track.TrackId); this.NavigationService.Navigate(new DisplayTrackPage(track.ArtistId)); }
/// <summary> /// DeleteButton action /// </summary> /// <param name="sender"></param> /// <param name="e"></param> /// <remarks> /// Delete Artist and all its tracks /// </remarks> private void DeleteButton_Click(object sender, RoutedEventArgs e) { var trackRepo = new TrackRepository(); var artistRepo = new ArtistRepository(); Artist artist = displayArtist.SelectedItem as Artist; foreach (Track t in artist.Tracks) { trackRepo.DeleteTrack(t.TrackId); } artistRepo.DeleteArtist(artist.ArtistId); this.NavigationService.Navigate(new DisplayArtistPage()); }
public async Task <IActionResult> OnPostAsync(string id) { var user = await _userManager.GetUserAsync(User); if (user == null) { throw new ApplicationException($"Unable to load user with ID '{_userManager.GetUserId(User)}'."); } Track = await TrackRepository.GetTrackVerifyOwner(id, user.Id); // cant find or no permission to delete if (Track == null) { return(RedirectToPage("./Index")); } await TrackRepository.DeleteTrack(Track.RowKey); _logger.LogInformation($"Track with ID '{Track.RowKey}' has been deleted by '{user.Id}'."); return(RedirectToPage("./Index")); }