public async Task <ActionResult> List([FromQuery] ResourceParameters resourceParameters)
        {
            var list = await Work.Role.GetList(resourceParameters);

            var previousPageLink = list.HasPrevious
                ? Help.CreateResourceUri(resourceParameters, ResourceUriType.PreviousPage, nameof(List))
                : null;

            var nextPageLink = list.HasNext
                ? Help.CreateResourceUri(resourceParameters, ResourceUriType.NextPage, nameof(List))
                : null;

            var paginationMetadata = new
            {
                totalCount  = list.TotalCount,
                pageSize    = list.PageSize,
                currentPage = list.CurrentPage,
                totalPages  = list.TotalPages,
                previousPageLink,
                nextPageLink
            };

            Response.Headers.Add("X-Pagination",
                                 Newtonsoft.Json.JsonConvert
                                 .SerializeObject(paginationMetadata));
            var personViews = _mapper.Map <IEnumerable <RoleDtoForReadUpdate> >(list);

            return(new JsonResult(personViews));
        }