Esempio n. 1
0
        public async Task <IActionResult> Edit(ushort id, [Bind("ActorId,FilmId,LastUpdate")] FilmActor filmActor)
        {
            if (id != filmActor.ActorId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(filmActor);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!FilmActorExists(filmActor.ActorId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["ActorId"] = new SelectList(_context.Actor, "ActorId", "FirstName", filmActor.ActorId);
            ViewData["FilmId"]  = new SelectList(_context.Film, "FilmId", "Title", filmActor.FilmId);
            return(View(filmActor));
        }
Esempio n. 2
0
        public async Task <IActionResult> Edit(int id, [Bind("ActorId,FilmId,LastUpdate")] FilmActor filmActor)
        {
            if (id != filmActor.ActorId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(filmActor);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!FilmActorExists(filmActor.ActorId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(filmActor));
        }
Esempio n. 3
0
        public async Task <IActionResult> PutFilmActor(int id, FilmActor filmActor)
        {
            if (id != filmActor.FilmId)
            {
                return(BadRequest());
            }

            _context.Entry(filmActor).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!FilmActorExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Esempio n. 4
0
        public ActionResult DeleteConfirmed(int id)
        {
            FilmActor filmActor = db.FilmActors.Find(id);

            db.FilmActors.Remove(filmActor);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public async Task <ActionResult <FilmActor> > PostFilmActor(FilmActor filmActor)
        {
            _context.FilmActors.Add(filmActor);
            await _context.SaveChangesAsync();

            //return CreatedAtAction("GetFilmActor", new { id = filmActor.FilmActorID }, filmActor);
            return(CreatedAtAction(nameof(GetFilmActor), new { id = filmActor.FilmActorID }, filmActor));
        }
Esempio n. 6
0
        public void SaveActorForFilm(int ActorId, int FilmId)
        {
            var model = new FilmActor();

            model.IdActor = ActorId;
            model.IdFilm  = FilmId;
            context.FilmActor.Add(model);
            context.SaveChanges();
        }
Esempio n. 7
0
        public static FilmActor GetThirdFilmActor(Actor actor, Film film)
        {
            var filmActor = new FilmActor();

            filmActor.Actor = actor;
            filmActor.Film  = film;

            return(filmActor);
        }
Esempio n. 8
0
        public FilmActor Create(FilmActor filmActor)
        {
            if (filmActor == null)
            {
                throw new ArgumentNullException("Film must not be null");
            }

            return(db.FilmActor.Add(filmActor));
        }
Esempio n. 9
0
        public void PostStartPageWithNullParametrsReturnsSearchedFilms()
        {
            // Arrange
            Genre genre = new Genre {
                id = 1, name = "generName2"
            };
            Actor actor = new Actor {
                id = 0, fullName = "actor"
            };
            FilmActor filmActor = new FilmActor {
                Actor = new Actor {
                    id = 0, fullName = "actor"
                }, ActorId = 0
            };
            string filmName = "film9";
            var    mockF    = new Mock <IFilmsExtractor>();

            mockF.Setup(repo => repo.AllFilms).Returns(GetTestFilms());
            mockF.Setup(repo => repo.FilmsWithName(filmName)).Returns(GetTestFilms().Where(f => f.name == filmName));
            mockF.Setup(repo => repo.FilmsWithGenre(genre)).Returns(GetTestFilms().Where(f => f.genre.id == genre.id));
            mockF.Setup(repo => repo.FilmsWithActor(actor)).Returns(GetTestFilms().Where(f => f.id > 7));

            string actorName = "actor";
            var    mockA     = new Mock <IActorsExtractor>();

            mockA.Setup(repo => repo.ActorsWithName(actorName)).Returns(new List <Actor> {
                actor
            });
            mockA.Setup(repo => repo.AllActors).Returns(new List <Actor> {
                actor
            });

            string genreName = "genreName2";
            var    mockG     = new Mock <IGenresExtractor>();

            mockG.Setup(repo => repo.GenresWithName(genreName)).Returns(new List <Genre> {
                genre
            });
            mockG.Setup(repo => repo.AllGenres).Returns(new List <Genre> {
                genre
            });

            var controller = new HomeController(mockF.Object, mockA.Object, mockG.Object);

            // Act
            var result = controller.StartPage(null, null, null);

            // Assert
            Assert.NotNull(result);
            var ViewResult = Assert.IsType <ViewResult>(result);
            var ViewModel  = Assert.IsAssignableFrom <FilmsViewModel>(ViewResult.Model);

            Assert.Equal(GetTestFilms().Count(), ViewModel.Films.Count);
        }
Esempio n. 10
0
        public async Task <IActionResult> Create([Bind("ActorId,FilmId,LastUpdate")] FilmActor filmActor)
        {
            if (ModelState.IsValid)
            {
                _context.Add(filmActor);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(filmActor));
        }
Esempio n. 11
0
 public ActionResult Edit([Bind(Include = "Id,FilmId,ActorId")] FilmActor filmActor)
 {
     if (ModelState.IsValid)
     {
         db.Entry(filmActor).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ActorId = new SelectList(db.Actors, "Id", "FullName", filmActor.ActorId);
     ViewBag.FilmId  = new SelectList(db.Films, "Id", "Title", filmActor.FilmId);
     return(View(filmActor));
 }
Esempio n. 12
0
        //Добавление нового фильма
        public Film AddFilm(Film film)
        {
            var FilmsDBQ = _context.Film;
            var FilmsDB  = FilmsDBQ.ToList();

            //var newFilm = _film.ConvertToFilme();

            if (!FilmsDB.Any(x =>
                             (x.Title == film.Title) &&
                             (x.Countrys.NameOfTheCountry == film.Countrys.NameOfTheCountry) &&
                             (x.Year == film.Year)))
            {
                _context.Film.Add(film);
            }
            _context.SaveChanges();


            #region
            List <FilmActor> filmActor = new List <FilmActor>();

            foreach (var item in film.FilmActor)
            {
                if (!filmActor.Any(x => x.ActorId == item.ActorId))
                {
                    FilmActor temp = new FilmActor()
                    {
                        FilmId = item.FilmId, ActorId = item.ActorId
                    };
                    filmActor.Add(temp);
                }
            }
            _context.SaveChanges();
            #endregion

            #region
            List <FilmGenre> filmGenre = new List <FilmGenre>();

            foreach (var item in film.FilmGenre)
            {
                if (!filmGenre.Any(x => x.GenreId == item.GenreId))
                {
                    FilmGenre temp = new FilmGenre()
                    {
                        FilmId = item.FilmId, GenreId = item.GenreId
                    };
                    filmGenre.Add(temp);
                }
            }
            _context.SaveChanges();
            #endregion
            return(film);
        }
Esempio n. 13
0
        public async Task <IActionResult> Create([Bind("ActorId,FilmId,LastUpdate")] FilmActor filmActor)
        {
            if (ModelState.IsValid)
            {
                _context.Add(filmActor);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["ActorId"] = new SelectList(_context.Actor, "ActorId", "FirstName", filmActor.ActorId);
            ViewData["FilmId"]  = new SelectList(_context.Film, "FilmId", "Title", filmActor.FilmId);
            return(View(filmActor));
        }
Esempio n. 14
0
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            FilmActor filmActor = db.FilmActors.Find(id);

            if (filmActor == null)
            {
                return(HttpNotFound());
            }
            return(View(filmActor));
        }
        public bool AddActor(FilmActor filmActor)
        {
            bool add = true;

            try
            {
                _context.FilmActor.Add(filmActor);
                _context.SaveChanges();
            }
            catch (Exception)
            {
                add = false;
            }
            return(add);
        }
Esempio n. 16
0
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            FilmActor filmActor = db.FilmActors.Find(id);

            if (filmActor == null)
            {
                return(HttpNotFound());
            }
            ViewBag.ActorId = new SelectList(db.Actors, "Id", "FullName", filmActor.ActorId);
            ViewBag.FilmId  = new SelectList(db.Films, "Id", "Title", filmActor.FilmId);
            return(View(filmActor));
        }
Esempio n. 17
0
        public IActionResult AddActor(Guid actor_id, Guid film_id)
        {
            FilmActor filmActor = new FilmActor();

            filmActor.Actor_ID = actor_id;
            filmActor.Film_ID  = film_id;
            bool added = _filmDataService.AddActor(filmActor);

            if (added)
            {
                return(Ok());
            }
            else
            {
                return(BadRequest("Actor ya añadido a la pelicula"));
            }
        }
Esempio n. 18
0
        public bool addRelationActor(ActorDTO a, int idFilm)
        {
            Actor ac = new Actor
            {
                id        = a.id,
                name      = a.name,
                character = a.character
            };

            Add <Actor>(ac, d => d.id == ac.id);

            FilmActor fa = new FilmActor
            {
                id_film  = idFilm,
                id_actor = ac.id
            };

            return(Add <FilmActor>(fa, d => d.id_film == idFilm && d.id_actor == ac.id));
        }
Esempio n. 19
0
        public FilmActor Delete(int film_id, int actor_id)
        {
            if (film_id <= 0)
            {
                throw new ArgumentException("Incorrect film id.");
            }

            if (actor_id <= 0)
            {
                throw new ArgumentException("Incorrect film id.");
            }

            FilmActor filmActor = db.FilmActor.FirstOrDefault(x => x.FilmId == film_id && x.ActorId == actor_id);

            if (filmActor == null)
            {
                return(null);
            }

            return(db.FilmActor.Remove(filmActor));
        }
Esempio n. 20
0
        public async Task <ActionResult <FilmActor> > PostFilmActor(FilmActor filmActor)
        {
            _context.FilmActors.Add(filmActor);
            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (FilmActorExists(filmActor.FilmId))
                {
                    return(Conflict());
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetFilmActor", new { id = filmActor.FilmId }, filmActor));
        }
Esempio n. 21
0
        public static void ManyToManyDelete()
        {
            var filmActor = RandomActor.GetRandomFilmActor();
            var filmId    = filmActor.FilmId;
            var actorId   = filmActor.ActorId;


            RandomActor.Write(filmActor);

            var entity = new FilmActor
            {
                FilmId  = filmId,
                ActorId = actorId
            };

            MoviesContext.Instance.FilmActors.Remove(entity);
            MoviesContext.Instance.SaveChanges();

            filmActor = MoviesContext.Instance.FilmActors
                        .SingleOrDefault(fa => fa.FilmId == filmId &&
                                         fa.ActorId == actorId);

            RandomActor.Write(filmActor);

            MoviesContext.Instance.FilmActors.Add(new FilmActor
            {
                FilmId  = filmId,
                ActorId = actorId
            });
            MoviesContext.Instance.SaveChanges();

            filmActor = MoviesContext.Instance.FilmActors
                        .SingleOrDefault(fa => fa.FilmId == filmId &&
                                         fa.ActorId == actorId);

            RandomActor.Write(filmActor);
        }
Esempio n. 22
0
        // Helper methods for many to many delete
        private static void Write(FilmActor filmActor)
        {
            if (filmActor == null)
            {
                Console.WriteLine("Film Actor Not Found");
                return;
            }

            var film  = filmActor.Film;
            var actor = filmActor.Actor;

            if (film == null)
            {
                film = MoviesContext.Instance.Films
                       .FirstOrDefault(f => f.FilmId == filmActor.FilmId);
            }
            if (actor == null)
            {
                actor = MoviesContext.Instance.Actors
                        .FirstOrDefault(a => a.ActorId == filmActor.ActorId);
            }

            Console.WriteLine($"Film: {film.FilmId}  -  {film.Title}\t Actor: {actor.ActorId}  -  {actor.FirstName} {actor.LastName}");
        }
Esempio n. 23
0
        static void AddActorToFilmById()
        {
            Console.Write("Film ");
            int film_id = GetId();

            if (film_id < 0)
            {
                return;
            }

            Console.Write("Actor ");
            int actor_id = GetId();

            if (actor_id < 0)
            {
                return;
            }

            try
            {
                FilmActor filmActor = new FilmActor
                {
                    FilmId  = film_id,
                    Film    = database.films.Get(film_id),
                    ActorId = actor_id,
                    Actor   = database.actors.Get(actor_id),
                };

                database.FilmActor.Create(filmActor);
                database.Save();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
        }
Esempio n. 24
0
        public void PostStartPageWith_Name_GenreName_ActorName_ReturnsSearchedFilms()
        {
            // Arrange
            IEnumerable <Film> films = GetTestFilms();
            Genre genre = new Genre {
                id = 1, name = "generName2"
            };
            Actor actor = new Actor {
                id = 0, fullName = "actor"
            };
            FilmActor filmActor = new FilmActor {
                Actor = new Actor {
                    id = 0, fullName = "actor"
                }, ActorId = 0
            };
            string filmName = "film9";
            var    mockF    = new Mock <IFilmsExtractor>();

            mockF.Setup(repo => repo.AllFilms).Returns(films);
            mockF.Setup(repo => repo.FilmsWithName(filmName)).Returns(films.Where(f => f.id == 7 || f.id == 9));
            mockF.Setup(repo => repo.FilmsWithGenre(genre)).Returns(films.Where(f => f.id == 5 || f.id == 7 || f.id == 8 || f.id == 9));
            mockF.Setup(repo => repo.FilmsWithActor(actor)).Returns(films.Where(f => f.id == 8 || f.id == 9));

            string actorName = "actor";
            var    mockA     = new Mock <IActorsExtractor>();

            mockA.Setup(repo => repo.ActorsWithName(actorName)).Returns(new List <Actor> {
                actor
            });
            mockA.Setup(repo => repo.AllActors).Returns(new List <Actor> {
                actor
            });

            string genreName = "genreName2";
            var    mockG     = new Mock <IGenresExtractor>();

            mockG.Setup(repo => repo.GenresWithName(genreName)).Returns(new List <Genre> {
                genre
            });
            mockG.Setup(repo => repo.AllGenres).Returns(new List <Genre> {
                genre
            });

            var controller = new HomeController(mockF.Object, mockA.Object, mockG.Object);

            // Act
            var result = controller.StartPage(filmName, genreName, actorName);

            // Assert
            Assert.NotNull(result);
            var ViewResult = Assert.IsType <ViewResult>(result);
            var ViewModel  = Assert.IsAssignableFrom <FilmsViewModel>(ViewResult.Model);

            Assert.Single(ViewModel.Films);
            var gettedFilm = Assert.IsType <Film>(ViewModel.Films.First());

            Assert.Equal(filmName, gettedFilm.name);
            Assert.Equal(genreName, gettedFilm.genre.name);
            Assert.Equal(genreName, ViewModel.AllGenres[0]);
            Assert.Equal(actorName, ViewModel.AllActors[0]);
        }
 public bool AddActor(FilmActor filmActor)
 {
     throw new NotImplementedException();
 }
Esempio n. 26
0
        private void InitializeDatabase(EntityContext context)
        {
            if (context.FilmActor.Any())
            {
                foreach (var filmActor in context.FilmActor)
                {
                    context.FilmActor.Remove(filmActor);
                }
                context.SaveChanges();
            }
            if (context.Film.Any())
            {
                foreach (var film in context.Film)
                {
                    context.Film.Remove(film);
                }
                context.SaveChanges();
            }
            if (context.Director.Any())
            {
                foreach (var director in context.Director)
                {
                    context.Director.Remove(director);
                }
                context.SaveChanges();
            }
            if (context.Rating.Any())
            {
                foreach (var rating in context.Rating)
                {
                    context.Rating.Remove(rating);
                }
                context.SaveChanges();
            }


            if (context.Actor.Any())
            {
                foreach (var actor in context.Actor)
                {
                    context.Actor.Remove(actor);
                }
                context.SaveChanges();
            }
            if (context.Person.Any())
            {
                foreach (var person in context.Person)
                {
                    context.Person.Remove(person);
                }
                context.SaveChanges();
            }
            Guid   personID1 = Guid.NewGuid();
            Person person1   = new Person()
            {
                Name      = "George Lucas",
                Person_ID = personID1
            };

            Guid   personID2 = Guid.NewGuid();
            Person person2   = new Person()
            {
                Name      = "Ewan McGregor",
                Person_ID = personID2
            };

            Guid   personID3 = Guid.NewGuid();
            Person person3   = new Person()
            {
                Name      = "Hayden Christensen",
                Person_ID = personID3
            };

            Guid   personID4 = Guid.NewGuid();
            Person person4   = new Person()
            {
                Name      = "Brad Pitt",
                Person_ID = personID4
            };

            Guid   personID5 = Guid.NewGuid();
            Person person5   = new Person()
            {
                Name      = "Quentin Tarantino",
                Person_ID = personID5
            };

            context.Person.Add(person1);
            context.Person.Add(person2);
            context.Person.Add(person3);
            context.Person.Add(person4);
            context.Person.Add(person5);
            context.SaveChanges();

            Guid  actorID1 = Guid.NewGuid();
            Actor actor1   = new Actor()
            {
                Actor_ID  = actorID1,
                Person_ID = personID2
            };
            Guid  actorID2 = Guid.NewGuid();
            Actor actor2   = new Actor()
            {
                Actor_ID  = actorID2,
                Person_ID = personID3
            };
            Guid  actorID3 = Guid.NewGuid();
            Actor actor3   = new Actor()
            {
                Actor_ID  = actorID3,
                Person_ID = personID4
            };

            context.Actor.Add(actor1);
            context.Actor.Add(actor2);
            context.Actor.Add(actor3);
            Guid     directorID1 = Guid.NewGuid();
            Director director1   = new Director()
            {
                Director_ID = directorID1,
                Person_ID   = personID1
            };

            Guid     directorID2 = Guid.NewGuid();
            Director director2   = new Director()
            {
                Director_ID = directorID2,
                Person_ID   = personID5
            };

            context.Director.Add(director1);
            context.Director.Add(director2);
            context.SaveChanges();

            Guid filmIDSW = Guid.NewGuid();
            Film film1    = new Film()
            {
                MinuteRunTime = 139,
                Director_ID   = directorID1,
                Title         = "Star Wars: Episodio III - La venganza de los Sith",
                Year          = 2005,
                Film_ID       = filmIDSW
            };

            Guid filmIDSW2 = Guid.NewGuid();
            Film film2     = new Film()
            {
                MinuteRunTime = 142,
                Director_ID   = directorID1,
                Title         = "Star Wars: Episodio II - El ataque de los clones",
                Year          = 2002,
                Film_ID       = filmIDSW2
            };

            Guid filmIDMB = Guid.NewGuid();
            Film filmMB   = new Film()
            {
                MinuteRunTime = 153,
                Director_ID   = directorID2,
                Title         = "Malditos bastardos",
                Year          = 2009,
                Film_ID       = filmIDMB
            };

            context.Film.Add(film1);
            context.Film.Add(film2);
            context.Film.Add(filmMB);
            context.SaveChanges();
            FilmActor fmSW1 = new FilmActor()
            {
                Actor_ID = actorID1,
                Film_ID  = filmIDSW
            };

            FilmActor fmSW2 = new FilmActor()
            {
                Actor_ID = actorID2,
                Film_ID  = filmIDSW
            };
            FilmActor fmSW21 = new FilmActor()
            {
                Actor_ID = actorID2,
                Film_ID  = filmIDSW2
            };
            FilmActor fmSW22 = new FilmActor()
            {
                Actor_ID = actorID1,
                Film_ID  = filmIDSW2
            };

            FilmActor filmActorMB = new FilmActor()
            {
                Actor_ID = actorID3,
                Film_ID  = filmIDMB
            };

            context.FilmActor.Add(fmSW1);
            context.FilmActor.Add(fmSW2);
            context.FilmActor.Add(fmSW21);
            context.FilmActor.Add(fmSW22);
            context.FilmActor.Add(filmActorMB);
            context.SaveChanges();
        }