Example #1
0
        public ActionResult EditMovie(int id)
        {
            var repository = new MovieCatalogEntities();
            var movie      = repository.Movies.FirstOrDefault(m => m.MovieId == id);

            // if movie doesn't exist go home
            if (movie == null)
            {
                return(RedirectToAction("Index"));
            }

            EditMovieViewModel model = new EditMovieViewModel();

            model.MovieId          = movie.MovieId;
            model.Title            = movie.Title;
            model.SelectedGenreId  = movie.GenreId;
            model.SelectedRatingId = movie.RatingId;

            model.Genres = from g in repository.Genres
                           select new SelectListItem {
                Text = g.GenreType, Value = g.GenreId.ToString()
            };

            model.Ratings = from r in repository.Ratings
                            select new SelectListItem {
                Text = r.RatingName, Value = r.RatingId.ToString()
            };

            return(View(model));
        }
Example #2
0
        public ActionResult Index(int id = 1)
        {
            /*
             * Movie result;
             * using (var conn = new SqlConnection())
             * {
             *  conn.ConnectionString = ConfigurationManager
             *      .ConnectionStrings["MovieCatalog"]
             *      .ConnectionString;
             *
             *  var parameters = new DynamicParameters();
             *  parameters.Add("@MovieId", id);
             *
             *  result = conn.Query<Movie>(
             *      "MovieSelectById",
             *      parameters,
             *      commandType: CommandType.StoredProcedure).FirstOrDefault();
             * }
             * ViewBag.Movie = result;
             */

            var repository = new MovieCatalogEntities();

            ViewBag.Movie = (from movie in repository.Movies
                             where movie.MovieId == id
                             select new MovieListView
            {
                MovieId = movie.MovieId,
                Title = movie.Title,
                GenreType = movie.Genre.GenreType,
                RatingName = movie.Rating.RatingName
            }).FirstOrDefault();

            return(View());
        }
Example #3
0
        public ActionResult AddMovie(AddMovieViewModel model)
        {
            var repository = new MovieCatalogEntities();

            if (ModelState.IsValid)
            {
                Movie movie = new Movie();
                movie.Title    = model.Title;
                movie.RatingId = model.SelectedRatingId;
                movie.GenreId  = model.SelectedGenreId;

                repository.Movies.Add(movie);
                repository.SaveChanges();
                return(RedirectToAction("EditMovie", new { id = movie.MovieId }));
            }

            // validation failed, return them to the view
            model.Genres = from g in repository.Genres
                           select new SelectListItem {
                Text = g.GenreType, Value = g.GenreId.ToString()
            };

            model.Ratings = from r in repository.Ratings
                            select new SelectListItem {
                Text = r.RatingName, Value = r.RatingId.ToString()
            };
            return(View(model));
        }
Example #4
0
        public ActionResult DeleteMovie(int id)
        {
            var repository = new MovieCatalogEntities();

            var movie = repository.Movies.FirstOrDefault(m => m.MovieId == id);

            // movie exists?
            if (movie != null)
            {
                repository.Movies.Remove(movie);
                repository.SaveChanges();
            }

            return(RedirectToAction("Index"));
        }
Example #5
0
        // GET: Home
        public ActionResult Index()
        {
            var repository = new MovieCatalogEntities();

            var model = from movie in repository.Movies
                        select new MovieListView
            {
                MovieId    = movie.MovieId,
                Title      = movie.Title,
                GenreType  = movie.Genre.GenreType,
                RatingName = movie.Rating.RatingName
            };

            return(View(model));
        }
Example #6
0
        public ActionResult AddMovie(AddMovieViewModel model)
        {
            var movie = new EntityFrameworkIntro.Models.Movie();

            movie.Title    = model.Title;
            movie.GenreId  = model.GenreId;
            movie.RatingId = model.RatingsId;

            var repository = new MovieCatalogEntities();

            repository.Movies.Add(movie);
            repository.SaveChanges();

            return(RedirectToAction("Index", new { id = movie.MovieId }));
        }
Example #7
0
        public ActionResult AddMovie()
        {
            var repository          = new MovieCatalogEntities();
            AddMovieViewModel model = new AddMovieViewModel();

            model.Genres = from g in repository.Genres
                           select new SelectListItem {
                Text = g.GenreType, Value = g.GenreId.ToString()
            };

            model.Ratings = from r in repository.Ratings
                            select new SelectListItem {
                Text = r.RatingName, Value = r.RatingId.ToString()
            };

            return(View(model));
        }
Example #8
0
        protected override void Seed(MovieCatalogEntities context)
        {
            context.Genres.AddOrUpdate(
                g => g.GenreType,
                new Genre {
                GenreType = "Sci-Fi"
            },
                new Genre {
                GenreType = "Adventure"
            },
                new Genre {
                GenreType = "Mystery"
            },
                new Genre {
                GenreType = "Horror"
            }
                );

            context.Ratings.AddOrUpdate(
                r => r.RatingName,
                new Rating {
                RatingName = "G"
            },
                new Rating {
                RatingName = "PG"
            },
                new Rating {
                RatingName = "PG-13"
            },
                new Rating {
                RatingName = "R"
            }
                );

            context.SaveChanges();

            context.Movies.AddOrUpdate(
                m => m.Title,
                new Movie
            {
                Title    = "Star Wars",
                GenreId  = context.Genres.First(g => g.GenreType == "Sci-Fi").GenreId,
                RatingId = context.Ratings.First(r => r.RatingName == "PG").RatingId
            }
                );
        }