Example #1
0
        public void PopulateAssignedCategoryData(Manarca_ProiectContext context,
                                                 Movie movie)
        {
            var allCategories = context.Genre;
            var MovieGenre    = new HashSet <int>(
                movie.MovieGenres.Select(c => c.MovieID));

            AssignedCategoryDataList = new List <AssignedCategoryData>();
            foreach (var cat in allCategories)
            {
                AssignedCategoryDataList.Add(new AssignedCategoryData
                {
                    GenreID  = cat.ID,
                    Name     = cat.GenreName,
                    Assigned = MovieGenre.Contains(cat.ID)
                });
            }
        }
Example #2
0
        public void UpdateMovieGenres(Manarca_ProiectContext context,
                                      string[] selectedCategories, Movie movieToUpdate)
        {
            if (selectedCategories == null)
            {
                movieToUpdate.MovieGenres = new List <MovieGenre>();
                return;
            }
            var selectedCategoriesHS = new HashSet <string>(selectedCategories);
            var MovieGenre           = new HashSet <int>
                                           (movieToUpdate.MovieGenres.Select(c => c.Genre.ID));

            foreach (var cat in context.Genre)
            {
                if (selectedCategoriesHS.Contains(cat.ID.ToString()))
                {
                    if (!MovieGenre.Contains(cat.ID))
                    {
                        movieToUpdate.MovieGenres.Add(
                            new MovieGenre
                        {
                            MovieID = movieToUpdate.ID,
                            GenreID = cat.ID
                        });
                    }
                }
                else
                {
                    if (MovieGenre.Contains(cat.ID))
                    {
                        MovieGenre courseToRemove
                            = movieToUpdate
                              .MovieGenres
                              .SingleOrDefault(i => i.GenreID == cat.ID);
                        context.Remove(courseToRemove);
                    }
                }
            }
        }