Exemplo n.º 1
0
        private void ExecuteAddTrackContainerToFavorites(object parameter)
        {
            IEnumerable <TrackContainer> containers;
            TrackContainer container = parameter as TrackContainer;

            if (container != null)
            {
                containers = new[] { container };
            }
            else
            {
                containers = parameter as IEnumerable <TrackContainer>;
            }

            if (containers != null && containers.Any())
            {
                try
                {
                    using (var session = DocumentStore.OpenSession())
                    {
                        foreach (var trackContainer in containers)
                        {
                            TrackContainerFavorite fav = new TrackContainerFavorite();
                            fav.TrackContainer = trackContainer;
                            fav.Index          = session.Query <Favorite>().Count();
                            session.Store(fav);
                        }

                        session.SaveChanges();
                    }

                    ToastService.Show(new ToastData
                    {
                        Icon    = AppIcons.Save,
                        Message = "Favorite added"
                    });
                }
                catch (Exception e)
                {
                    ToastService.Show("Unable to save favorite. " + e.Message);
                    Logger.Log("Error while saving favorite. " + e, Category.Exception, Priority.High);
                }
            }
        }
        private void ExecuteAddTrackContainerToFavorites(object parameter)
        {
            IEnumerable<TrackContainer> containers;
            TrackContainer container = parameter as TrackContainer;

            if (container != null)
            {
                containers = new[] { container };
            }
            else
            {
                containers = parameter as IEnumerable<TrackContainer>;
            }

            if (containers != null && containers.Any())
            {
                try
                {
                    using (var session = DocumentStore.OpenSession())
                    {
                        foreach (var trackContainer in containers)
                        {
                            TrackContainerFavorite fav = new TrackContainerFavorite();
                            fav.TrackContainer = trackContainer;
                            fav.Index = session.Query<Favorite>().Count();
                            session.Store(fav);
                        }

                        session.SaveChanges();
                    }

                    ToastService.Show(new ToastData
                    {
                        Icon = AppIcons.Save,
                        Message = "Favorite added"
                    });
                }
                catch (Exception e)
                {
                    ToastService.Show("Unable to save favorite. " + e.Message);
                    Logger.Log("Error while saving favorite. " + e, Category.Exception, Priority.High);
                }
            }
        }