private PagedResultSet<ICoolingProject> FindProjectsQuery(ISession session, ResultOptions options)
 {
     var countQuery = ProjectsQuery(session)
         .Select(Projections.RowCount())
         .FutureValue<int>();
     var result = ProjectsQuery(session)
         .LimitResultSet(options)
         .Future<ICoolingProject>();
     return new PagedResultSet<ICoolingProject>(result.ToList(), countQuery.Value);
 }
 private PagedResultSet<ICustomer> FindCustomersQuery(ISession session, string searchString, ResultOptions options)
 {
     var countQuery = CustomersQuery(session, searchString)
         .Select(Projections.RowCount())
         .FutureValue<int>();
     var result = CustomersQuery(session, searchString)
         .LimitResultSet(options)
         .Future<ICustomer>();
     return new PagedResultSet<ICustomer>(result.ToList(), countQuery.Value);
 }
 public ActionResult Index(int page = 0, int pageSize = 20)
 {
     var options = new ResultOptions {Page = page, PageSize = pageSize};
     var projects = _repository.WrapQueryInTransaction(s => FindProjectsQuery(s, options));
     return View(new PagedViewModel<ICoolingProject>(projects, options));
 }
 public ActionResult Index(int page = 0, int pageSize = 20)
 {
     var options = new ResultOptions { Page = page, PageSize = pageSize };
     var customers = _repository.WrapQueryInTransaction(s => FindCustomersQuery(s, string.Empty, options));
     return View(new PagedViewModel<ICustomer>(customers, options));
 }