public async Task Remove(TrackCollection trackCollection)
 {
     var connection = new SQLiteAsyncConnection(DbPath);
     var loadTracks = await Locator.MusicLibraryVM.TracklistItemRepository.LoadTracks(trackCollection);
     foreach (TracklistItem tracklistItem in loadTracks)
     {
         await Locator.MusicLibraryVM.TracklistItemRepository.Remove(tracklistItem);
     }
     await connection.DeleteAsync(trackCollection);
 }
示例#2
0
 public async Task<List<TracklistItem>> LoadTracks(TrackCollection trackCollection)
 {
     var connection = new SQLiteAsyncConnection(DbPath);
     return await connection.Table<TracklistItem>().Where(x => x.TrackCollectionId == trackCollection.Id).ToListAsync();
 }
 public Task Add(TrackCollection trackCollection)
 {
     var connection = new SQLiteAsyncConnection(DbPath);
     return connection.InsertAsync(trackCollection);
 }
 public static async Task UpdateTrackCollection(TrackCollection trackCollection)
 {
     var loadTracks = await Locator.MusicLibraryVM.TracklistItemRepository.LoadTracks(trackCollection);
     foreach (TracklistItem tracklistItem in loadTracks)
     {
         await Locator.MusicLibraryVM.TracklistItemRepository.Remove(tracklistItem);
     }
     foreach (TrackItem trackItem in trackCollection.Playlist)
     {
         var trackListItem = new TracklistItem { TrackId = trackItem.Id, TrackCollectionId = trackCollection.Id };
         await Locator.MusicLibraryVM.TracklistItemRepository.Add(trackListItem);
     }
 }
 public static async Task DeletePlaylist(TrackCollection trackCollection)
 {
     await Locator.MusicLibraryVM.TrackCollectionRepository.Remove(trackCollection);
     await App.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
     {
         Locator.MusicLibraryVM.TrackCollections.Remove(trackCollection);
         Locator.MusicLibraryVM.CurrentTrackCollection = null;
     });
 }
 public static Task DeletePlaylistTrack(TrackItem track, TrackCollection trackCollection)
 {
     return Locator.MusicLibraryVM.TracklistItemRepository.Remove(track.Id, trackCollection.Id);
 }
 public static async Task AddNewPlaylist(string trackCollectionName)
 {
     if (string.IsNullOrEmpty(trackCollectionName)) return;
     TrackCollection trackCollection = null;
     trackCollection = await Locator.MusicLibraryVM.TrackCollectionRepository.LoadFromName(trackCollectionName);
     if (trackCollection != null)
     {
         await App.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => ToastHelper.Basic(Strings.PlaylistAlreadyExists));
     }
     else
     {
         trackCollection = new TrackCollection();
         trackCollection.Name = trackCollectionName;
         await Locator.MusicLibraryVM.TrackCollectionRepository.Add(trackCollection);
         await App.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => Locator.MusicLibraryVM.TrackCollections.Add(trackCollection));
     }
 }