/// <summary> /// Gets a list of Items within a "page" for a Definition /// </summary> /// <param name="moduleId"></param> /// <param name="pageNumber"></param> /// <param name="pageSize"></param> /// <param name="totalPages"></param> /// <param name="searchTerm"></param> /// <param name="searchField"></param> /// <param name="descending"></param> /// <returns></returns> public static List <ItemWithValues> GetForDefinitionWithValues_Paged( Guid defGuid, Guid siteGuid, int pageNumber, int pageSize, out int totalPages, out int totalRows, string searchTerm = "", string searchField = "", bool descending = false) { totalPages = 1; IDataReader reader = DBItems.GetForDefinitionWithValues_Paged(defGuid, siteGuid, pageNumber, pageSize, searchTerm, searchField, descending ? "DESC" : "ASC"); var items = LoadListFromReaderWithValues(reader, true); totalRows = _totalRows; if (pageSize > 0) { totalPages = totalRows / pageSize; } if (totalRows <= pageSize) { totalPages = 1; } else { Math.DivRem(totalRows, pageSize, out int remainder); if (remainder > 0) { totalPages += 1; } } return(items); }