Exemple #1
0
        public async Task <IActionResult> Create(FilmViewModel model, IFormFileCollection posters)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            Film film = new Film
            {
                Name        = model.Name,
                Description = model.Description,
                AgeLimit    = model.AgeLimit,
                ReleaseDate = model.ReleaseDate,
                Duration    = model.Duration
            };
            await _filmRepository.CreateAsync(film);

            FilmTrailer trailer = new FilmTrailer
            {
                Url    = model.TrailerUrl,
                FilmId = film.Id
            };
            await _trailerRepository.CreateAsync(trailer);

            film.Trailer = trailer;

            List <FilmPoster> filmPosters = await SavePostersImages(film.Id, posters);

            film.Posters.AddRange(filmPosters);

            await _filmRepository.UpdateAsync(film);

            return(RedirectToAction("Index", "Admin"));
        }
Exemple #2
0
 private async Task SaveStateAsync(FilmTrailer trailer, EntityState state)
 {
     _context.Entry(trailer).State = state;
     await _context.SaveChangesAsync();
 }
Exemple #3
0
 public async Task DeleteAsync(FilmTrailer trailer)
 {
     _context.Remove(trailer);
     await _context.SaveChangesAsync();
 }
Exemple #4
0
 public async Task UpdateAsync(FilmTrailer trailer)
 {
     await SaveStateAsync(trailer, EntityState.Modified);
 }
Exemple #5
0
 public async Task CreateAsync(FilmTrailer trailer)
 {
     await SaveStateAsync(trailer, EntityState.Added);
 }