public IHttpActionResult Page(ClaimsPageParams parameters)
        {
            PageResult result = null;

            ExecuteInSession(session =>
            {
                IList <Claim> data = GetPageCriteriaByParams(session, parameters)
                                     .SetFirstResult((parameters.Page - 1) * parameters.PageSize)
                                     .SetMaxResults(parameters.PageSize)
                                     .List <Claim>();

                result = new PageResult()
                {
                    Total = GetPageCriteriaByParams(session, parameters).SetProjection(Projections.Count(Projections.Id())).UniqueResult <int>(),
                    Data  = ModelMapper.Map <IEnumerable <Claim>, IEnumerable <ClaimDto> >(data)
                };
            });

            return(Ok <PageResult>(result));
        }
 private ICriteria GetPageCriteriaByParams(ISession session, ClaimsPageParams parameters)
 {
     return(session.CreateCriteria <Claim>());
 }