public async Task <IActionResult> Edit(int id, [Bind("Id,FilmId,GenreId")] FilmGenre filmGenre) { if (id != filmGenre.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(filmGenre); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!FilmGenreExists(filmGenre.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["FilmId"] = new SelectList(_context.Film, "FilmId", "Name", filmGenre.FilmId); ViewData["GenreId"] = new SelectList(_context.Genre, "GenreId", "Name", filmGenre.GenreId); return(View(filmGenre)); }
public void LoadAdd(int film_id) { var Function = new Functions(); DataRowCollection data = Functions.Select("SELECT * FROM Genres"); foreach (DataRow row in data) { CustomComboBox item = new CustomComboBox(); item.Text = row["naam"].ToString(); item.Value = Int32.Parse(row["id"].ToString()); FilmGenre.Items.Add(item); } FilmAge.Items.Add("0"); FilmAge.Items.Add("6"); FilmAge.Items.Add("9"); FilmAge.Items.Add("12"); FilmAge.Items.Add("16"); FilmAge.Items.Add("18"); if (film_id > 0) { DataRowCollection film = Functions.Select("SELECT g.naam as GenreNaam, f.naam as FilmNaam, * FROM films f LEFT JOIN Genres g ON f.genre = g.id WHERE f.id= '" + film_id + "'"); FilmNaam.Text = film[0]["FilmNaam"].ToString(); FilmAge.Text = film[0]["leeftijd"].ToString(); FilmTime.Text = film[0]["speel_duur"].ToString(); FilmTrailer.Text = film[0]["youtube_code"].ToString(); FilmDisc.Text = film[0]["beschrijving"].ToString(); FilmGenre.Text = film[0]["GenreNaam"].ToString(); FilmGenre.SelectedIndex = FilmGenre.FindStringExact(film[0]["GenreNaam"].ToString()); FilmAge.SelectedIndex = FilmAge.FindStringExact(film[0]["leeftijd"].ToString()); FilmAddButton.Text = "Aanpassen"; } }
public async Task <IActionResult> PutFilmGenre(int id, FilmGenre filmGenre) { if (id != filmGenre.Id) { return(BadRequest()); } FilmGenreValid c = new FilmGenreValid(_context, filmGenre); if (!c.Valid()) { return(BadRequest("Фільм з таким жанром уже існує")); } _context.Entry(filmGenre).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!FilmGenreExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <IActionResult> Edit(int id, [Bind("GenreID,Genre")] FilmGenre filmGenre) { if (id != filmGenre.GenreID) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(filmGenre); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!FilmGenreExists(filmGenre.GenreID)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(filmGenre)); }
public FilmGenre Create(FilmGenre filmGenre) { if (filmGenre == null) { throw new ArgumentNullException("Film must not be null"); } return(db.FilmGenre.Add(filmGenre)); }
public Film(string name, int year, FilmGenre genre, int age, int lenghtInMinutes, string country) { Id = Guid.NewGuid(); Name = name; Year = year; Genre = genre; Age = age; LenghtInMinutes = lenghtInMinutes; Country = country; }
public async Task <IActionResult> Create([Bind("GenreID,Genre")] FilmGenre filmGenre) { if (ModelState.IsValid) { _context.Add(filmGenre); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(filmGenre)); }
//Добавление нового фильма 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); }
public async Task <IActionResult> Create([Bind("Id,FilmId,GenreId")] FilmGenre filmGenre) { if (ModelState.IsValid) { _context.Add(filmGenre); await _context.SaveChangesAsync(); return(RedirectToAction("Index", "FilmGenres")); } ViewData["FilmId"] = new SelectList(_context.Film, "FilmId", "Name", filmGenre.FilmId); ViewData["GenreId"] = new SelectList(_context.Film, "GenreId", "Name", filmGenre.GenreId); return(View(filmGenre)); }
public async Task <ActionResult <FilmGenre> > PostFilmGenre(FilmGenre filmGenre) { _context.FilmGenre.Add(filmGenre); FilmGenreValid c = new FilmGenreValid(_context, filmGenre); if (!c.Valid()) { return(BadRequest("Фільм з таким жанром уже існує")); } await _context.SaveChangesAsync(); return(CreatedAtAction("GetFilmGenre", new { id = filmGenre.Id }, filmGenre)); }
private void bntAdd_Click(object sender, EventArgs e) { FilmCountry filmCon = new FilmCountry(); FilmGenre filmGen = new FilmGenre(); filmCon.FilmID = FindFilmIdByName(); filmCon.CountryID = FindCountryIdByName(); filmGen.FilmID = FindFilmIdByName(); filmGen.GenreID = FindGenreIdByName(); db.FilmCountries.Add(filmCon); db.FilmGenres.Add(filmGen); db.SaveChanges(); MessageBox.Show("successfully sent"); }
public async Task <ApiResultLite> CreateAsync(string name) { FilmGenre filmgenre = new FilmGenre() { Name = name }; _context.FilmGenre.Add(filmgenre); int result = await _context.SaveChangesAsync(); if (result == 0) { return(new ApiErrorResultLite("Thêm thất bại")); } return(new ApiSuccessResultLite("Thêm thành công")); }
public bool addRelationGenre(GenreDTO a, int idFilm) { Genre ac = new Genre { id = a.id, name = a.Name }; Add <Genre>(ac, d => d.id == ac.id); FilmGenre fa = new FilmGenre { id_film = idFilm, id_genre = ac.id }; return(Add <FilmGenre>(fa, d => d.id_film == idFilm && d.id_genre == ac.id)); }
public async Task <ApiResultLite> DeleteAsync(int id) { FilmGenre filmgenre = await _context.FilmGenre.FindAsync(id); if (filmgenre == null) { return(new ApiErrorResultLite("Không tìm thấy")); } else { _context.FilmGenre.Remove(filmgenre); if (await _context.SaveChangesAsync() != 0) { return(new ApiSuccessResultLite("Xóa thành công")); } else { return(new ApiSuccessResultLite("Không xóa được")); } } }
public FilmGenre Delete(int film_id, int genre_id) { if (film_id <= 0) { throw new ArgumentException("Incorrect film id."); } if (genre_id <= 0) { throw new ArgumentException("Incorrect film id."); } FilmGenre filmGanre = db.FilmGenre.FirstOrDefault(x => x.FilmId == film_id && x.GenreId == genre_id); if (filmGanre == null) { return(null); } return(db.FilmGenre.Remove(filmGanre)); }
public void CreateFilmGenres(List <string> genreIds, int filmId) { foreach (string genre in genreIds) { // Gets a list of existing FilmGenre items to check against. IList <FilmGenre> existingFilmGenres = _context.FilmGenres .Where(fg => fg.FilmID == filmId && fg.Genre.ID.ToString() == genre) .ToList(); // If no FilmGenres with the current FilmID and GenreID exist, one is created. if (existingFilmGenres.Count == 0) { FilmGenre newFilmGenre = new FilmGenre { FilmID = filmId, GenreID = int.Parse(genre) }; _context.FilmGenres.Add(newFilmGenre); } } }
public async Task <ApiResultLite> UpdateAsync(FilmGenreUpdateRequest request) { FilmGenre filmgenre = await _context.FilmGenre.FindAsync(request.Id); if (filmgenre == null) { return(new ApiErrorResultLite("Không tìm thấy")); } else { filmgenre.Id = request.Id; filmgenre.Name = request.Name; _context.Update(filmgenre); int result = await _context.SaveChangesAsync(); if (result == 0) { return(new ApiErrorResultLite("Cập nhật thất bại")); } return(new ApiSuccessResultLite("Cập nhật thành công")); } }
static void AddGenreToFilmById() { Console.Write("Film: "); int film_id = GetId(); if (film_id < 0) { return; } Console.Write("Genre: "); int actor_id = GetId(); if (actor_id < 0) { return; } try { FilmGenre filmGenre = new FilmGenre { FilmId = film_id, Film = database.films.Get(film_id), GenreId = actor_id, Genre = database.genres.Get(actor_id), }; database.FilmGenre.Create(filmGenre); database.Save(); } catch (Exception e) { Console.WriteLine(e.Message); } }
public AddOrEditFilm() { InitializeComponent(); FilmGenre a = new FilmGenre() { Name = "horror" }; FilmGenre b = new FilmGenre() { Name = "cartoon" }; FilmGenre c = new FilmGenre() { Name = "drama" }; ((App)Application.Current).AllGenres.Add(a); ((App)Application.Current).AllGenres.Add(b); ActiveFilm = new Film() { Genres = new List <FilmGenre>(((App)Application.Current).AllGenres) }; ((App)Application.Current).AllGenres.Add(c); List <FilmGenre> genres = ((App)Application.Current).AllGenres; foreach (var genre in genres) { filmGenres[genre] = ActiveFilm.Genres.Contains(genre); } //GD_ValuesGrid.DataContext = ActiveFilm; CB_Genre.ItemsSource = filmGenres; }
public async Task <IActionResult> Import(IFormFile fileExcel) { if (ModelState.IsValid) { if (fileExcel != null) { using var stream = new FileStream(fileExcel.FileName, FileMode.Create); await fileExcel.CopyToAsync(stream); using XLWorkbook workBook = new XLWorkbook(stream, XLEventTracking.Disabled); List <List <string> > Errors = new List <List <string> >(); foreach (IXLWorksheet worksheet in workBook.Worksheets) { List <string> ErrorsExcelFile = new List <string>(); Genre newgenre; var g = (from genre in _context.Genre where genre.Name.Contains(worksheet.Name) select genre).ToList(); if (g.Count > 0) { newgenre = g[0]; } else { newgenre = new Genre { Name = worksheet.Name, Description = "Завантажено з Excel-файлу " }; _context.Genre.Add(newgenre); } await _context.SaveChangesAsync(); foreach (IXLRow row in worksheet.RowsUsed().Skip(1)) { Film film = new Film(); FilmGenre filmGenre = new FilmGenre(); string name = row.Cell(1).Value.ToString(); if (name.Length > 50 || name.Length < 3) { string template = "Назва листа альбому:{0}. Рядок: {1}. {2}"; string message = "Довжина назви фільму <3 або >50 символів."; string ErrorMessage = string.Format(template, worksheet.Name, row, message); ErrorsExcelFile.Add(ErrorMessage); continue; } var f = (from flm in _context.Film where flm.Name.Contains(name) select flm).ToList(); if (f.Count() > 0) { film = f[0]; var fg = (from flm in _context.FilmGenre where (flm.FilmId == film.FilmId && flm.Genre.Name == newgenre.Name) select flm).ToList(); if (fg.Count == 0) { filmGenre.Film = film; filmGenre.Genre = newgenre; _context.FilmGenre.Add(filmGenre); } await _context.SaveChangesAsync(); } else { film.Name = row.Cell(1).Value.ToString(); if (row.Cell(6).Value.ToString().Length < 3 || Convert.ToInt32(row.Cell(6).Value) > DateTime.Now.Year || Convert.ToInt32(row.Cell(6).Value) < 1600) { string template = "Назва листа альбому: {0}. " + "Рядок: {1}. " + "{2}"; string message = " Рік виходу фільму <1600 або > поточного року або поле незаповнено."; string ErrorMessage = string.Format(template, worksheet.Name, row, message); ErrorsExcelFile.Add(ErrorMessage); continue; } film.Release = Convert.ToInt32(row.Cell(6).Value); var match1 = Regex.Match(row.Cell(10).Value.ToString(), @"^(0|[1-9]+[0-9]*)(\.[0-9]+( )?)?( млн| млрд)$"); if (!match1.Success || row.Cell(10).Value.ToString().Length < 2) { string template = "Назва листа альбому:{0}. Рядок: {1}. {2}"; string message = " Бюджет фільму-десятковий дріб у неправильному форматі або поле незаповнено."; string ErrorMessage = string.Format(template, worksheet.Name, row, message); ErrorsExcelFile.Add(ErrorMessage); continue; } film.Budget = row.Cell(10).Value.ToString(); film.Description = row.Cell(11).Value.ToString(); filmGenre.Film = film; filmGenre.Genre = newgenre; string name1 = row.Cell(9).Value.ToString(); if (name1.Length > 50 || name1.Length < 3) { string template = "Назва листа альбому:{0}. Рядок: {1}. {2}"; string message = "Довжина назви країни <3 або >50 символів, або поле незаповнено"; string ErrorMessage = string.Format(template, worksheet.Name, row, message); ErrorsExcelFile.Add(ErrorMessage); continue; } Country country; var a = (from aut in _context.Country where aut.Name.Contains(row.Cell(9).Value.ToString()) select aut).ToList(); if (a.Count() > 0) { country = a[0]; } else { country = new Country { Name = row.Cell(9).Value.ToString() }; _context.Add(country); } film.Country = country; string name2 = row.Cell(2).Value.ToString(); var match5 = Regex.Match(row.Cell(2).Value.ToString(), @"^([A-Z][a-z]+)\ ([A-Z][a-z]+)(\ ?([A-Z][a-z]+)?)|([А-ЯІЇЄЩ][а-яіїщє]+)\ ([А-ЯІЇЄЩ][а-яіїщє]+)(\ ?([А-ЯІЇЄЩ][а-яіїщє]+)?)$"); if (!match5.Success || name2.Length > 50 || name2.Length < 3) { string template = "Назва листа альбому:{0}. Рядок: {1}. {2}"; string message = "Довжина імені режисера <3 або >50 символів, поле незаповнено або неправильний формат "; string ErrorMessage = string.Format(template, worksheet.Name, row, message); ErrorsExcelFile.Add(ErrorMessage); continue; } Director director; var n = (from aut in _context.Director where aut.Name.Contains(row.Cell(2).Value.ToString()) select aut).ToList(); if (n.Count() > 0) { director = n[0]; } else { director = new Director(); director.Name = row.Cell(2).Value.ToString(); var match = Regex.Match(row.Cell(3).Value.ToString(), @"ч|ж"); if (!match.Success) { string template = "Назва листа альбому:{0}. Рядок: {1}. {2}"; string message = "У поле Стать введено не ж(жінка) або ч(чоловік), або поле незаповнено"; string ErrorMessage = string.Format(template, worksheet.Name, row, message); ErrorsExcelFile.Add(ErrorMessage); continue; } director.Sex = row.Cell(3).Value.ToString(); var result = true; int year = DateTime.Now.Year - 18; int month = DateTime.Now.Month; int day = DateTime.Now.Day; int min_year = 1700; int var = Convert.ToDateTime(row.Cell(4).Value).Year; int var1 = Convert.ToDateTime(row.Cell(4).Value).Month; int var2 = Convert.ToDateTime(row.Cell(4).Value).Day; if (var > year || var < min_year || (var == year && var1 > month) || (var == year && var1 == month && var2 > day)) { result = false; } if (result == false || Convert.ToDateTime(row.Cell(4).Value).ToString().Length == 0) { string template = "Назва листа альбому:{0}. Рядок: {1}. {2}"; string message = "Неправильна дата народження режисера або поле незаповнено"; string ErrorMessage = string.Format(template, worksheet.Name, row, message); ErrorsExcelFile.Add(ErrorMessage); continue; } director.Birth = Convert.ToDateTime(row.Cell(4).Value); if (!string.IsNullOrEmpty(row.Cell(5).Value.ToString())) { director.Death = Convert.ToDateTime(row.Cell(5).Value); } else { director.Death = null; } _context.Add(director); } film.Director = director; string name4 = row.Cell(7).Value.ToString(); if (name1.Length > 50 || name1.Length < 3) { string template = "Назва листа альбому:{0}. Рядок: {1}. {2}"; string message = "Довжина назви кінокомпанії <3 або >50 символів, або поле незаповнено"; string ErrorMessage = string.Format(template, worksheet.Name, row, message); ErrorsExcelFile.Add(ErrorMessage); continue; } Company company; var co = (from aut in _context.Company where aut.Name.Contains(row.Cell(7).Value.ToString()) select aut).ToList(); if (co.Count() > 0) { company = co[0]; } else { company = new Company { Name = row.Cell(7).Value.ToString(), Year = Convert.ToInt32(row.Cell(8).Value) }; _context.Add(company); } film.Director.Company = company; _context.Film.Add(film); _context.FilmGenre.Add(filmGenre); await _context.SaveChangesAsync(); } } if (ErrorsExcelFile.Count != 0) { Errors.Add(ErrorsExcelFile); } } await _context.SaveChangesAsync(); if (Errors.Count != 0) { string name = fileExcel.FileName; ExportErrorsWord(Errors, name); } } } return(RedirectToAction("Index", "Films")); }
public static void Initialize(DVDContext context) { context.Database.EnsureCreated(); // Look for any Actors. if (context.Actors.Any()) { return; // DB has been seeded } // Actors var actors = new Actor[] { new Actor { ActorID = 101, ActorFullName = "Leonardo DiCaprio", ActorNotes = "Es un actor, productor de cine." }, new Actor { ActorID = 102, ActorFullName = "Katherine Elizabeth Winslet", ActorNotes = "Nacida en una familia de actores." }, new Actor { ActorID = 103, ActorFullName = "Billy Zane ", ActorNotes = "Conocido como Billy Zane, es un actor y director estadounidense." }, new Actor { ActorID = 104, ActorFullName = "Frances Fisher ", ActorNotes = "Ha aparecido en películas como Unforgiven, Titanic, Gone in Sixty Seconds y True Crime (1999)." }, new Actor { ActorID = 105, ActorFullName = "Gloria Stuart ", ActorNotes = "Actriz estadounidense, adquirió reconocimiento internacional por su papel de Rose DeWitt Bukater en la película Titanic (1997)." } }; foreach (Actor s in actors) { context.Actors.Add(s); } context.SaveChanges(); // RoleType var roleTypes = new RoleType[] { new RoleType { RoleTypeID = 1, RoleTypes = " Jack Dawson, Principal" }, new RoleType { RoleTypeID = 2, RoleTypes = " Rose DeWitt Bukater, Principal" }, new RoleType { RoleTypeID = 3, RoleTypes = " Caledon Nathan , Secundario" }, new RoleType { RoleTypeID = 4, RoleTypes = " Ruth DeWitt Bukater, Secundario" }, new RoleType { RoleTypeID = 5, RoleTypes = " Rose Dawson (Anciana), Principal" } }; foreach (RoleType i in roleTypes) { context.RoleTypes.Add(i); } context.SaveChanges(); // Producers var producers = new Producer[] { new Producer { ProducerID = 1, ProducerName = "James Cameron", ContactEmailAddress = "*****@*****.**", Website = "https://www.imdb.com/name/nm0000116/" }, new Producer { ProducerID = 2, ProducerName = "Jon Landau ", ContactEmailAddress = "*****@*****.**", Website = "https://www.imdb.com/name/nm0484457/" }, new Producer { ProducerID = 3, ProducerName = "Guillermo del Toro", ContactEmailAddress = "*****@*****.**", Website = "https://deltorofilms.com/" }, new Producer { ProducerID = 4, ProducerName = "Steven S. DeKnight", ContactEmailAddress = "*****@*****.**", Website = "https://www.imdb.com/name/nm0000116/" }, }; foreach (Producer i in producers) { context.Producers.Add(i); } context.SaveChanges(); // FilmCertificate var filmCertificates = new FilmCertificate[] { new FilmCertificate { CertificateID = 1, Certificate = "PG-13" }, new FilmCertificate { CertificateID = 2, Certificate = "PG" }, new FilmCertificate { CertificateID = 3, Certificate = "G" }, new FilmCertificate { CertificateID = 4, Certificate = "R" }, new FilmCertificate { CertificateID = 5, Certificate = "NR" } }; foreach (FilmCertificate i in filmCertificates) { context.FilmCertificates.Add(i); } context.SaveChanges(); // FilmGenres var filmGenres = new FilmGenre[] { new FilmGenre { GenreID = 1, Genre = "Drama" }, new FilmGenre { GenreID = 2, Genre = "Romance" }, new FilmGenre { GenreID = 3, Genre = "Comedia" }, new FilmGenre { GenreID = 4, Genre = "Ficción" }, new FilmGenre { GenreID = 5, Genre = "Acción" }, new FilmGenre { GenreID = 6, Genre = "Documental" } }; foreach (FilmGenre i in filmGenres) { context.FilmGenres.Add(i); } context.SaveChanges(); // Film Titles var filmTitles = new FilmTitle[] { new FilmTitle { FilmTitleID = 10, FilmTitles = "Titanic", FilmStory = "Jack, un joven artista, en una partida de cartas gana un pasaje para América, en el Titanic, el trasatlántico más grande y seguro jamás construido.", FilmReleaseDate = DateTime.Parse("1997-12-19"), FilmDuration = 195, GenreID = filmGenres.Single(c => c.GenreID == 1).GenreID, CertificateID = filmCertificates.Single(c => c.CertificateID == 1).CertificateID, FilmAdditionalInfo = "Titanic obtuvo muy buenas críticas tras su estreno." } }; foreach (FilmTitle i in filmTitles) { context.FilmTitles.Add(i); } context.SaveChanges(); // Film Titles Producer var filmTitlesProducers = new FilmTitlesProducer[] { new FilmTitlesProducer { ProducerID = producers.Single(c => c.ProducerID == 1).ProducerID, FilmTitleID = filmTitles.Single(c => c.FilmTitleID == 10).FilmTitleID }, new FilmTitlesProducer { ProducerID = producers.Single(c => c.ProducerID == 2).ProducerID, FilmTitleID = filmTitles.Single(c => c.FilmTitleID == 10).FilmTitleID }, }; foreach (FilmTitlesProducer i in filmTitlesProducers) { context.FilmTitlesProducers.Add(i); } context.SaveChanges(); // FilmsActorRoles var filmsActorRols = new FilmsActorRol[] { new FilmsActorRol { FilmTitleID = filmTitles.Single(c => c.FilmTitleID == 10).FilmTitleID, ActorID = actors.Single(c => c.ActorID == 101).ActorID, RoleTypeID = roleTypes.Single(c => c.RoleTypeID == 1).RoleTypeID, CharacterName = " Jack Dawson", CharacterDescription = "Un sujeto de Wisconsin de clase baja que ha viajado por varias partes del mundo." }, new FilmsActorRol { FilmTitleID = filmTitles.Single(c => c.FilmTitleID == 10).FilmTitleID, ActorID = actors.Single(c => c.ActorID == 102).ActorID, RoleTypeID = roleTypes.Single(c => c.RoleTypeID == 2).RoleTypeID, CharacterName = "Kate Winslet", CharacterDescription = "Una joven de diecisiete años originaria de Filadelfia." }, new FilmsActorRol { FilmTitleID = filmTitles.Single(c => c.FilmTitleID == 10).FilmTitleID, ActorID = actors.Single(c => c.ActorID == 103).ActorID, RoleTypeID = roleTypes.Single(c => c.RoleTypeID == 3).RoleTypeID, CharacterName = "Billy Zane ", CharacterDescription = "Un adinerado de treinta años de edad, funge como el antagonista de la película." }, new FilmsActorRol { FilmTitleID = filmTitles.Single(c => c.FilmTitleID == 10).FilmTitleID, ActorID = actors.Single(c => c.ActorID == 104).ActorID, RoleTypeID = roleTypes.Single(c => c.RoleTypeID == 4).RoleTypeID, CharacterName = "Ruth DeWitt Bukater ", CharacterDescription = "Desea que su hija contraiga matrimonio con Cal." }, new FilmsActorRol { FilmTitleID = filmTitles.Single(c => c.FilmTitleID == 10).FilmTitleID, ActorID = actors.Single(c => c.ActorID == 105).ActorID, RoleTypeID = roleTypes.Single(c => c.RoleTypeID == 5).RoleTypeID, CharacterName = "Rose Dawson Calvert", CharacterDescription = "La misma protagonista solo que con una edad de 100 años." } }; foreach (FilmsActorRol i in filmsActorRols) { context.FilmsActorRols.Add(i); } context.SaveChanges(); // -------------------------------------------------------------------------------------------------- }
public FilmGenreValid(FilmsContext _context, FilmGenre filmgenre) { this._context = _context; this.filmgenre = filmgenre; }
public async Task <IActionResult> EditFilm(IFormCollection form, AddFilmViewModel addFilmViewModel) { if (!ModelState.IsValid) { var film = _uow.FilmRepository.GetById(addFilmViewModel.Film.FilmId); var genres = _uow.GenreRepository.Get(); var selectedGenres = _uow.GenreRepository.Get().Include(a => a.FilmGenres) .Where(a => a.FilmGenres.Any(filmGenre => filmGenre.FilmId == addFilmViewModel.Film.FilmId)); var items = new List <SelectListItem>(); foreach (var genre in selectedGenres) { var item = new SelectListItem(genre.GenreName, genre.GenreId.ToString()); items.Add(item); } var genreViewModel = new AddFilmViewModel { SelectedGenres = items, Film = film, OriginalSelectedGenres = items, Genres = genres }; return(View(genreViewModel)); } var uploads = Path.Combine(_appEnvironment.WebRootPath, "img", addFilmViewModel.PostedFile.FileName); await using (var fileStream = new FileStream(uploads, FileMode.Create)) { await addFilmViewModel.PostedFile.CopyToAsync(fileStream); } var myFilm = _uow.FilmRepository.GetById(addFilmViewModel.Film.FilmId); myFilm.Title = addFilmViewModel.Film.Title; myFilm.Length = addFilmViewModel.Film.Length; myFilm.Url = addFilmViewModel.PostedFile.FileName; myFilm.Description = addFilmViewModel.Film.Description; _uow.FilmRepository.Update(myFilm); var addItems = form["SelectedGenre"].Except(form["OriginalSelectedGenre"]); var removeItems = form["OriginalSelectedGenre"].Except(form["SelectedGenre"]); foreach (var item in addItems) { var filmGenre = new FilmGenre { FilmId = myFilm.FilmId, GenreId = int.Parse(item) }; _uow.FilmGenreRepository.Add(filmGenre); } foreach (var item in removeItems) { var filmGenre = _uow.FilmGenreRepository.Get() .Where(a => a.FilmId == myFilm.FilmId && a.GenreId == int.Parse(item)).Cast <FilmGenre>().FirstOrDefault(); if (filmGenre == null) { continue; } filmGenre.Deleted = 1; _uow.FilmGenreRepository.Update(filmGenre); } _uow.Commit(); return(RedirectToAction("Film")); }