Exemplo n.º 1
0
        public async Task <IActionResult> Index([FromQuery] int pageNum, [FromQuery] int pageSize)
        {
            if (pageNum < 1)
            {
                pageNum = 1;
            }

            if (pageSize < 1)
            {
                pageSize = PageSize;
            }

            var result = new FilmsListViewModel()
            {
                PageNum  = pageNum,
                PageSize = pageSize
            };

            result.Films = (await _filmRepository.GetFilms(pageNum, pageSize)).Select(e => new FilmViewModel()
            {
                Id          = e.Id,
                Description = e.Description,
                Director    = e.Director,
                Name        = e.Name,
                ReleaseYear = e.ReleaseYear,
                UserId      = e.UserId
            }).ToList();

            result.TotalCount = await _filmRepository.GetFilmsCount();

            return(View(result));
        }
Exemplo n.º 2
0
        public virtual ActionResult Index()
        {
            var model = new FilmsListViewModel
            {
                Names = repo.GetAll().Select(f => f.Name)
            };

            return(View(model));
        }
Exemplo n.º 3
0
        public ViewResult List()
        {
            ViewBag.Title = "Список фильмов";
            FilmsListViewModel obj = new FilmsListViewModel();

            obj.allFilms     = allFilms.AllFilms;
            obj.currCategory = "Фильмы";

            return(View(obj)); // будущая хтмл страница
        }
Exemplo n.º 4
0
        public ViewResult List(string genre)
        {
            string             _genre    = genre;
            IEnumerable <Film> films     = null;
            string             currGenre = "";

            if (string.IsNullOrEmpty(genre))
            {
                films = allFilms.Films.OrderBy(i => i.id);
            }
            else
            {
                if (string.Equals("horror", genre, StringComparison.OrdinalIgnoreCase))
                {
                    films     = allFilms.Films.Where(i => i.Genre.GenreName.Equals("Ужасы")).OrderBy(i => i.id);
                    currGenre = "Ужасы";
                }
                if (string.Equals("comedy", genre, StringComparison.OrdinalIgnoreCase))
                {
                    films     = allFilms.Films.Where(i => i.Genre.GenreName.Equals("Комедия")).OrderBy(i => i.id);
                    currGenre = "Комедия";
                }
                if (string.Equals("documentary", genre, StringComparison.OrdinalIgnoreCase))
                {
                    films     = allFilms.Films.Where(i => i.Genre.GenreName.Equals("Документальный")).OrderBy(i => i.id);
                    currGenre = "Документальный";
                }
                if (string.Equals("drama", genre, StringComparison.OrdinalIgnoreCase))
                {
                    films     = allFilms.Films.Where(i => i.Genre.GenreName.Equals("Драма")).OrderBy(i => i.id);
                    currGenre = "Драма";
                }
                if (string.Equals("adventure", genre, StringComparison.OrdinalIgnoreCase))
                {
                    films     = allFilms.Films.Where(i => i.Genre.GenreName.Equals("Приключение")).OrderBy(i => i.id);
                    currGenre = "Приключение";
                }
                if (string.Equals("fantasy", genre, StringComparison.OrdinalIgnoreCase))
                {
                    films     = allFilms.Films.Where(i => i.Genre.GenreName.Equals("Фантастика")).OrderBy(i => i.id);
                    currGenre = "Фантастика";
                }
            }
            var carObj = new FilmsListViewModel
            {
                AllFilms  = films,
                CurrGenre = currGenre
            };

            ViewBag.Title = "Страница с фильмами";
            return(View(carObj));
        }
Exemplo n.º 5
0
        /// <summary>
        /// Возвращает список фильмов
        /// </summary>
        /// <param name="skip">сколько нужно пропустить, если 0 то ничего не пропускаем</param>
        /// <param name="take">сколько нужно получить, если 0 то берем все</param>
        /// <returns></returns>
        public async Task <FilmsListViewModel> GetFilmsAsync(int skip, int take)
        {
            var result = new FilmsListViewModel();

            using (var ctx = new FilmsCatalogDbContext())
            {
                var q = ctx.Films
                        .OrderByDescending(f => f.Id)
                        .Include("User");
                result.TotalCount = q.Count();
                q            = take == 0 ? q : q.Skip(skip).Take(take);
                result.Films = await q.ProjectToListAsync <FilmViewModel>(new FilmModelMapper());
            }
            return(result);
        }
Exemplo n.º 6
0
        public ViewResult List(string category, int page = 1)
        {
            FilmsListViewModel model = new FilmsListViewModel
            {
                Films = repository.Films
                        .Where(p => category == null || p.Category == category)
                        .OrderBy(film => film.FilmId)
                        .Skip((page - 1) * pageSize)
                        .Take(pageSize),
                PagingInfo = new PagingInfo
                {
                    CurrentPage  = page,
                    ItemsPerPage = pageSize,
                    TotalItems   = category == null?
                                   repository.Films.Count() :
                                       repository.Films.Where(film => film.Category == category).Count()
                },
                CurrentCategory = category
            };

            return(View(model));
        }
        public IActionResult Index()
        {
            var list = new FilmsListViewModel(_context);

            return(View(list));
        }