Ejemplo n.º 1
0
        /// <summary>
        /// Метод получения списка избранных фильмов из базы даннных
        /// </summary>
        private async void GetFavoriteMovies()
        {
            try
            {
                BusyIndicatorValue = true;
                IEnumerable <MovieDTO> favoriteMoviesFromDb = _movieService.GetMovies();
                List <int>             moviesId             = new List <int>();
                foreach (var item in favoriteMoviesFromDb)
                {
                    moviesId.Add(item.ExternalId);
                }
                List <Movie> favoriteMoviesFromSite = new List <Movie>();
                foreach (var item in moviesId)
                {
                    Movie movie = await _dataService.GetDirectMoveData(item);

                    favoriteMoviesFromSite.Add(movie);
                }
                Movies             = new ObservableCollection <Movie>(favoriteMoviesFromSite);
                BusyIndicatorValue = false;
            }
            catch (ServiceRequestException)
            {
                RaiseNotificationServer();
            }
            catch (Exception e)
            {
                _logger.ErrorException(ForExceptions, e);
            }
        }
        private async void GetDirectMovieInfo(int id)
        {
            try
            {
                BusyIndicatorValue = true;
                var movie = await _dataService.GetDirectMoveData(id);

                List <MediaCrew> crews = (movie.Credits.Crew).Take(10).ToList();
                List <MediaCast> casts = (movie.Credits.Cast).Take(10).ToList();
                DirectMovie = movie;
                Crew        = new ObservableCollection <MediaCrew>(crews);
                Cast        = new ObservableCollection <MediaCast>(casts);
                MovieDTO movieFromDb = _movieService.GetMovie(DirectMovie.Id);
                if (movieFromDb == null)
                {
                    CanDelFromDb = false;
                    CanAddToDb   = true;
                }
                else
                {
                    CanDelFromDb = true;
                    CanAddToDb   = false;
                }
                BusyIndicatorValue = false;
            }
            catch (ServiceRequestException)
            {
                RaiseNotification();
            }
            catch (Exception e)
            {
                _logger.ErrorException(ForExceptions, e);
            }
        }