Esempio n. 1
0
        public async Task <GeoEpithetsIndexPageViewModel> SelectAsync(int currentPage, int numberOfItemsPerPage)
        {
            if (currentPage < PagingConstants.MinimalPageNumber)
            {
                throw new InvalidPageNumberException();
            }

            if (numberOfItemsPerPage < PagingConstants.MinimalItemsPerPage || numberOfItemsPerPage > PagingConstants.MaximalItemsPerPageAllowed)
            {
                throw new InvalidItemsPerPageException();
            }

            long numberOfItems = await this.service.SelectCountAsync(null);

            var data = await this.service.SelectAsync(null, currentPage *numberOfItemsPerPage, numberOfItemsPerPage, nameof(IGeoName.Name), SortOrder.Ascending);

            var items = data.Select(this.mapper.Map <GeoEpithetViewModel>).ToArray();

            var model     = new ListWithPagingViewModel <GeoEpithetViewModel>(GeoEpithetsController.IndexActionName, numberOfItems, numberOfItemsPerPage, currentPage, items);
            var viewModel = new GeoEpithetsIndexPageViewModel
            {
                Model     = model,
                PageTitle = Strings.IndexPageTitle
            };

            return(viewModel);
        }
        public async Task <ActionResult> Index(int?p, int?n)
        {
            int currentPage          = p ?? PagingConstants.DefaultPageNumber;
            int numberOfItemsPerPage = n ?? PagingConstants.DefaultLargeNumberOfItemsPerPage;

            var userId    = this.UserId;
            var articleId = this.FakeArticleId;

            var items = (await this.service.All(userId, articleId, currentPage, numberOfItemsPerPage))
                        .Select(d => new FileViewModel
            {
                ArticleId    = articleId.ToString(),
                DocumentId   = d.Id.ToString(),
                FileName     = d.FileName,
                Comment      = d.Comment,
                DateCreated  = d.DateCreated,
                DateModified = d.DateModified
            })
                        .ToArray();

            var numberOfDocuments = await this.service.Count(userId, articleId);

            var viewModel = new ListWithPagingViewModel <FileViewModel>(nameof(this.Index), numberOfDocuments, numberOfItemsPerPage, currentPage, items);

            this.Response.StatusCode = (int)HttpStatusCode.OK;
            return(this.View(viewModel));
        }
Esempio n. 3
0
        public async Task <ActionResult> Index(int?p, int?n)
        {
            string returnUrl = this.Request[ContextKeys.ReturnUrl];

            if (!string.IsNullOrWhiteSpace(returnUrl))
            {
                return(this.Redirect(returnUrl));
            }

            int currentPage          = p ?? PagingConstants.DefaultPageNumber;
            int numberOfItemsPerPage = n ?? PagingConstants.DefaultLargeNumberOfItemsPerPage;

            long numberOfItems = await this.service.SelectCountAsync(null);

            var data = await this.service.SelectAsync(null, currentPage *numberOfItemsPerPage, numberOfItemsPerPage, nameof(IContinent.Name), SortOrder.Ascending);

            var items = data.Select(this.mapper.Map <ContinentViewModel>).ToArray();

            var model     = new ListWithPagingViewModel <ContinentViewModel>(IndexActionName, numberOfItems, numberOfItemsPerPage, currentPage, items);
            var viewModel = new ContinentsIndexPageViewModel
            {
                Model     = model,
                PageTitle = Strings.IndexPageTitle
            };

            this.ViewData[ContextKeys.AreaName]       = AreaName;
            this.ViewData[ContextKeys.ControllerName] = ControllerName;
            this.ViewData[ContextKeys.ActionName]     = IndexActionName;
            this.ViewData[ContextKeys.BackActionName] = IndexActionName;
            return(this.View(IndexActionName, viewModel));
        }