public async Task <ActionResult <Job[]> > GetAllJobs(int pageNumber = 1, int pageSize = Data.Constants.Paging.DefaultPageSize, string sortBy = "JobId Desc")
        {
            EntityCollection <Job> dbJobs = null;

            try
            {
                dbJobs = await _repository.GetAllJobsAsync(pageNumber, pageSize, sortBy);
            }
            catch (ParseException ex)
            {
                return(BadRequest("Request format is invalid: " + ex.Message));
            }
            catch (Exception ex)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, ex));
            }

            if (dbJobs == null)
            {
                return(NotFound());
            }

            Data.ModelObjectCollection <Data.Models.Job> Jobs = new ModelObjectCollection <Data.Models.Job>
            {
                TotalCount     = dbJobs.TotalCount,
                PageNumber     = dbJobs.PageNumber,
                PageSize       = dbJobs.PageSize,
                TotalPages     = dbJobs.TotalPages,
                SortBy         = dbJobs.SortBy,
                NextPageNumber = dbJobs.NextPageNumber,
                PrevPageNumber = dbJobs.PrevPageNumber,
                NextPageUrl    = "",
                PrevPageUrl    = "",
                Data           = _mapper.Map <Data.Models.Job []>(dbJobs.Data)
            };

            Jobs.NextPageUrl = (Jobs.PageNumber == Jobs.TotalPages) ? "" : ("api/Jobs?pageNumber" + Jobs.NextPageNumber.ToString())
                               + "&pageSize=" + Jobs.PageSize.ToString()
                               + "&sortBy=" + Jobs.SortBy;
            Jobs.PrevPageUrl = (Jobs.PageNumber == 1) ? "" : ("api/Jobs?pageNumber" + Jobs.PrevPageNumber.ToString())
                               + "&pageSize=" + Jobs.PageSize.ToString()
                               + "&sortBy=" + Jobs.SortBy;

            return(Ok(Jobs));
        }