public void Execute(object parameter) { var episodeWithState = parameter as EpisodeWithState; Episode episode = episodeWithState?.Episode; if (episode == null) { episode = parameter as Episode; } if (episode == null) { return; } using (var db = new LocalStorageContext()) { foreach (Favorite favEntity in db.Favorites) { if (favEntity.EpisodeId == episode.Id) { db.Favorites.Remove(favEntity); break; } } db.SaveChanges(); } }
private void SwipeDelete_Invoked(SwipeItem sender, SwipeItemInvokedEventArgs args) { dynamic output = args.SwipeControl.DataContext; System.Guid inkId = output.InkId; switch (output.Type) { case "Ink": using (var db = new LocalStorageContext()) { var ink = db.Memes.Remove(db.Memes.Find(inkId)); db.SaveChanges(); ReLoadNotes(); } break; case "Bookmark": using (var db = new LocalStorageContext()) { var ink = db.Memes.Remove(db.Memes.Find(inkId)); db.SaveChanges(); ReLoadNotes(); } break; } }
public static async Task UpdateDownloadedFromCache() { using (LocalStorageContext c = new LocalStorageContext()) { await c.SaveChangesAsync(); } }
public void NavigateToItem(object clickedItem) { if (clickedItem is EpisodeWithState) { NavigateToEpisode((clickedItem as EpisodeWithState).Episode); return; } dynamic output = clickedItem; Guid inkId = output.InkId; switch (output.Type) { case "Ink": using (var db = new LocalStorageContext()) { var ink = db.Memes.Where(m => m.Id == inkId).FirstOrDefault(); NavigateToInkNote(ink); } break; case "Bookmark": using (var db = new LocalStorageContext()) { var ink = db.Memes.Where(m => m.Id == inkId).FirstOrDefault(); NavigateToPlayerWithInk(ink); } break; } }
public void Execute(object parameter) { var noteParameter = parameter as dynamic; if (noteParameter == null) { return; } System.Guid noteId = noteParameter?.InkId; switch (noteParameter.Type) { case "Ink": using (var db = new LocalStorageContext()) { var ink = db.Memes.Remove(db.Memes.Find(noteId)); db.SaveChanges(); } break; case "Bookmark": using (var db = new LocalStorageContext()) { var ink = db.Memes.Remove(db.Memes.Find(noteId)); db.SaveChanges(); } break; } }
private void AppBarButton_Click(object sender, RoutedEventArgs e) { dynamic output = (sender as AppBarButton).DataContext; System.Guid inkId = output.InkId; switch (output.Type) { case "Ink": using (var db = new LocalStorageContext()) { var ink = db.Memes.Remove(db.Memes.Find(inkId)); db.SaveChanges(); ReLoadNotes(); } break; case "Bookmark": using (var db = new LocalStorageContext()) { var ink = db.Memes.Remove(db.Memes.Find(inkId)); db.SaveChanges(); ReLoadNotes(); } break; } }
public void FavoriteCurrentEpisode() { using (var db = new LocalStorageContext()) { db.Favorites.Add(new Favorite(CurrentEpisode)); db.SaveChanges(); } }
public static async Task UpdateDownloadedFromCache() { using (LocalStorageContext c = new LocalStorageContext()) { var foundInDb = c.EpisodeCache.FirstOrDefault(); foundInDb.IsDownloaded = true; await c.SaveChangesAsync(); } }
/// <summary> /// Initializes a new instance of the <see cref="App"/> class. /// executed, and as such is the logical equivalent of main() or WinMain(). /// </summary> public App() { this.InitializeComponent(); this.Suspending += OnSuspending; LocalStorageContext.CheckMigrations(); this.RequiresPointerMode = ApplicationRequiresPointerMode.WhenRequested; }
public LocalStorageServiceSqlCompact() { var prefs = IoC.Get<IAppPreferences>(); Database.DefaultConnectionFactory = new SqlCeConnectionFactory("System.Data.SqlServerCe.4.0", prefs.DataStorePath, ""); Database.SetInitializer(new LocalStorageContextInitializer()); _context = new LocalStorageContext(); }
private void AutoSuggestBox_TextChanged(AutoSuggestBox sender, AutoSuggestBoxTextChangedEventArgs args) { if (args.Reason == AutoSuggestionBoxTextChangeReason.UserInput) { using (var context = new LocalStorageContext()) { var results = context.EpisodeCache.Where(t => t.Title.ToLower().Contains(sender.Text.ToLower())); sender.ItemsSource = results.ToList(); } } }
private void BuildInkNotesForEpisode(LocalStorageContext db) { var results = (from inks in db.Memes join eps in db.EpisodeCache on inks.EpisodeKey equals eps.Key select new { InkId = inks.Id, Title = eps.Title, Time = TimeSpan.FromMilliseconds(inks.Time), Type = inks.HasInk ? "Ink" : "Bookmark", Episode = eps, NoteText = inks.NoteText }).AsEnumerable().LambdaDistinct((a, b) => a.InkId == b.InkId).OrderBy(ob => ob.Time); var projected = from c in results group c by c.Title; IEnumerable <IGrouping <string, dynamic> > ps = projected; Notes = ps; }
private async Task SaveInkNote() { if (_editingExisting) { using (MemoryStream ms = new MemoryStream()) { using (var memStream = ms.AsRandomAccessStream()) { await inkingCanvas.InkPresenter.StrokeContainer.SaveAsync(memStream).AsTask().ConfigureAwait(false); } if (ms.TryGetBuffer(out ArraySegment <byte> foo)) { _data.Ink = foo.Array; } using (var db = new LocalStorageContext()) { db.MemeData.Update(_data); await db.SaveChangesAsync(); } } } else { Player.InkNoteData.InkMeme = _inkNote.Id; _inkNote.HasInk = true; using (MemoryStream ms = new MemoryStream()) { using (var memStream = ms.AsRandomAccessStream()) { await inkingCanvas.InkPresenter.StrokeContainer.SaveAsync(memStream).AsTask().ConfigureAwait(false); } if (ms.TryGetBuffer(out ArraySegment <byte> foo)) { Player.InkNoteData.Ink = foo.Array; } using (var db = new LocalStorageContext()) { db.Memes.Add(_inkNote); await db.SaveChangesAsync(); db.MemeData.Add(Player.InkNoteData); await db.SaveChangesAsync(); } } Player.InkNoteData = null; ViewModel.GoBack(); } }
private static async Task SetItemDownloaded(string filename) { using (var db = new LocalStorageContext()) { var dbItems = db.EpisodeCache.Where(ep => ep.LocalFileName == filename); foreach (var dbMatch in dbItems) { dbMatch.IsDownloaded = true; } await db.SaveChangesAsync(); } }
public async Task LoadNotes() { await Task.Run(async() => { using (var db = new LocalStorageContext()) { await DispatcherHelper.ExecuteOnUIThreadAsync(() => { BuildInkNotesForEpisode(db); }); } }); }
public void Execute(object parameter) { if (parameter == null || (parameter as Episode) == null) { return; } using (var db = new LocalStorageContext()) { db.Favorites.Add(new Favorite(parameter as Episode)); db.SaveChanges(); } }
private void BuildDownloads(LocalStorageContext db) { var results2 = from eps in db.EpisodeCache join state in db.PlaybackState on eps.Key equals state.EpisodeKey into myJoin from sub in myJoin.DefaultIfEmpty() where eps.IsDownloaded == true select new EpisodeWithState { Episode = eps, PlaybackState = sub ?? new EpisodePlaybackState() }; Downloads = results2; }
internal async Task LoadFavorites() { await Task.Run(async() => { using (var db = new LocalStorageContext()) { await DispatcherHelper.ExecuteOnUIThreadAsync(() => { BuildFavorites(db); }); } }); }
public async Task LoadDownloads() { await Task.Run(async() => { using (var db = new LocalStorageContext()) { await DispatcherHelper.ExecuteOnUIThreadAsync(() => { BuildDownloads(db); }); } }); }
private async Task LoadExisting(BuildCast.DataModel.InkNote meme) { using (var db = new LocalStorageContext()) { _data = db.MemeData.Where(l => l.InkMeme == meme.Id).FirstOrDefault(); if (_data != null) { var image = await _data.GetImage(Image_ImageOpened); framergrab.Source = image; await LoadInk(_data.Ink); } } }
private void BuildFavorites(LocalStorageContext db) { var results2 = from fav in db.Favorites join eps in db.EpisodeCache on fav.EpisodeId equals eps.Id join state in db.PlaybackState on eps.Key equals state.EpisodeKey into myJoin from sub in myJoin.DefaultIfEmpty() select new EpisodeWithState { Episode = eps, PlaybackState = sub ?? new EpisodePlaybackState() }; Favorites = results2; }
private void DeleteButton_Click(object sender, RoutedEventArgs e) { if (_editingExisting) { using (var db = new LocalStorageContext()) { db.Memes.Remove(_inkNote); db.SaveChanges(); if (_data != null) { db.MemeData.Remove(_data); db.SaveChanges(); } } } }
public async void RemoveFavoritedEpisode(Episode episode) { using (var db = new LocalStorageContext()) { foreach (Favorite favEntity in db.Favorites) { if (episode == null) { break; } if (favEntity.EpisodeId == episode.Id) { db.Favorites.Remove(favEntity); break; } } db.SaveChanges(); } await LoadFavorites(); }