public ActionResult QuickAddWorkItem(CompleteWorkItemViewModel newWorkItemViewModel, int?page)
        {
            if (ModelState.IsValid)
            {
                WorkItem newWorkItemEntity = mapper.Map <QuickAddWorkItemViewModel, WorkItem>(newWorkItemViewModel.QuickAddWorkItem);
                newWorkItemEntity.IsEnabled = true;
                newWorkItemEntity.IsDeleted = false;
                newWorkItemEntity.Status    = Infrastructure.Enums.Status.TO_DO;
                dbContext.WorkItems.Add(newWorkItemEntity);
                dbContext.SaveChanges();

                return(RedirectToAction("Index"));
            }
            string actionName     = nameof(Index);
            string controllerName = this.ControllerContext.RouteData.Values["controller"].ToString();
            var    pager          = new Pager(dbContext.WorkItems.Count(), page, controllerName, actionName);

            newWorkItemViewModel.QuickAddWorkItem.ListOfProjectIDs = getAllProjects();
            var workitemsEntity = dbContext.WorkItems.Where(w => w.IsDeleted == false && w.IsEnabled == true).AsEnumerable().OrderByDescending(w => w.WorkItemID).Skip((pager.CurrentPage - 1) * pager.PageSize).Take(pager.PageSize);

            var workitemsViewModel = mapper.Map <IEnumerable <WorkItem>, IEnumerable <WorkItemViewModel> >(workitemsEntity);

            newWorkItemViewModel.WorkItems = workitemsViewModel;
            newWorkItemViewModel.Pager     = pager;

            return(View("Index", newWorkItemViewModel));
        }
        /// <summary>
        /// Returns a view that displays list of WorkItems.
        /// </summary>
        /// <returns>View with list of all workitems</returns>
        public ActionResult Index(int?page)
        {
            string actionName      = this.ControllerContext.RouteData.Values["action"].ToString();
            string controllerName  = this.ControllerContext.RouteData.Values["controller"].ToString();
            var    pager           = new Pager(dbContext.WorkItems.Count(), page, controllerName, actionName);
            var    workitemsEntity = dbContext.WorkItems.Where(w => !w.IsDeleted && w.IsEnabled).AsEnumerable().OrderByDescending(w => w.WorkItemID).Skip((pager.CurrentPage - 1) * pager.PageSize).Take(pager.PageSize);

            var workitemsViewModel         = mapper.Map <IEnumerable <WorkItem>, IEnumerable <WorkItemViewModel> >(workitemsEntity);
            var completeWorkitemsViewModel = new CompleteWorkItemViewModel();

            completeWorkitemsViewModel.WorkItems = workitemsViewModel;

            completeWorkitemsViewModel.QuickAddWorkItem = new QuickAddWorkItemViewModel();
            completeWorkitemsViewModel.QuickAddWorkItem.ListOfProjectIDs = getAllProjects();

            completeWorkitemsViewModel.Pager = pager;

            return(View(completeWorkitemsViewModel));
        }