/// <summary> /// This returns a sorted summary sorted and extended collection. /// </summary> /// <param name="sortChain">Sort direction</param> /// <param name="pageIndex">Index of the page</param> /// <param name="pageSize">Page size</param> /// <returns>A list of sorted items following the sorting criteria</returns> public async Task <IEnumerable <BookingSummaryViewObject> > GetSortedCollectionPagedAsync( Dictionary <string, ListSortDirection> sortChain, long pageIndex, int pageSize) { var dataPager = new DataPager <BookingSummaryViewObject>(SqlExecutor); var pageStart = pageIndex; if (pageStart == 0) { pageStart = 1; } NumberPage = await GetPageCount(pageSize).ConfigureAwait(false); var datas = await dataPager.GetPagedSummaryDoSortedAsync( QueryType.QueryBookingPaged, sortChain, pageIndex, pageSize); return(datas); }