public void GetData(string sidx, string sord, int?_page) { int rows = Functions.GetGridNumberOfRows(); int numberOfPagesToShow = Functions.GetGridNumberOfPagesToShow(); int currentPage = _page is null ? 1 : Convert.ToInt32(_page); int startRowIndex = ((currentPage * rows) - rows); int totalRecords = RoleMaster.GetRecordCount(); int totalPages = (int)Math.Ceiling((float)totalRecords / (float)rows); List <RoleMaster> objRoleMasterCol = RoleMaster.SelectSkipAndTake(rows, startRowIndex, sidx + " " + sord); // fields and titles string[,] fieldNames = new string[, ] { { "RoleId", "Role Id" }, { "RoleDescription", "Role Description" }, { "CreatedOn", "Created On" }, { "CreatedBy", "Created By" }, { "ModifiedOn", "Modified On" }, { "ModifiedBy", "Modified By" } }; // assign properties RoleMasterData = objRoleMasterCol; RoleMasterFieldNames = fieldNames; TotalPages = totalPages; CurrentPage = currentPage; FieldToSort = String.IsNullOrEmpty(sidx) ? "RoleId" : sidx; FieldSortOrder = String.IsNullOrEmpty(sord) ? "asc" : sord; FieldToSortWithOrder = String.IsNullOrEmpty(sidx) ? "RoleId" : (sidx + " " + sord).Trim(); NumberOfPagesToShow = numberOfPagesToShow; StartPage = Functions.GetPagerStartPage(currentPage, numberOfPagesToShow, totalPages); EndPage = Functions.GetPagerEndPage(StartPage, currentPage, numberOfPagesToShow, totalPages); }
/// <summary> /// Gets the list of data for use by the jqgrid plug-in /// </summary> public IActionResult OnGetGridData(string sidx, string sord, int _page, int rows, bool isforJqGrid = true) { int totalRecords = RoleMaster.GetRecordCount(); int startRowIndex = ((_page * rows) - rows); List <RoleMaster> objRoleMasterCol = RoleMaster.SelectSkipAndTake(rows, startRowIndex, sidx + " " + sord); int totalPages = (int)Math.Ceiling((float)totalRecords / (float)rows); if (objRoleMasterCol is null) { return(new JsonResult("{ total = 0, page = 0, records = 0, rows = null }")); } var jsonData = new { total = totalPages, _page, records = totalRecords, rows = ( from objRoleMaster in objRoleMasterCol select new { id = objRoleMaster.RoleId, cell = new string[] { objRoleMaster.RoleId.ToString(), objRoleMaster.RoleDescription, objRoleMaster.CreatedOn.ToString("d"), objRoleMaster.CreatedBy, objRoleMaster.ModifiedOn.HasValue ? objRoleMaster.ModifiedOn.Value.ToString("d") : "", objRoleMaster.ModifiedBy } }).ToArray() }; return(new JsonResult(jsonData)); }
/// <summary> /// Shows how to get a specific number of sorted records, starting from an index. The total number of records are also retrieved when using the SelectSkipAndTake() method. /// For example, if there are 200 records take only 10 records (numberOfRecordsToRetrieve), starting from the first index (startRetrievalFromRecordIndex = 0) /// The example below uses some variables, here are their definitions: /// totalRecordCount - total number of records if you were to retrieve everything /// startRetrievalFromRecordIndex - the index to start taking records from. Zero (0) E.g. If you want to skip the first 20 records, then assign 19 here. /// numberOfRecordsToRetrieve - take n records starting from the startRetrievalFromRecordIndex /// sortBy - to sort in Ascending order by Field Name, just assign just the Field Name, do not pass 'asc' /// sortBy - to sort in Descending order by Field Name, use the Field Name, a space and the word 'desc' /// </summary> private void SelectSkipAndTake() { int startRetrievalFromRecordIndex = 0; int numberOfRecordsToRetrieve = 10; string sortBy = "RoleId"; //string sortBy = "RoleId desc"; // 1. select a specific number of sorted records starting from the index you specify List <RoleMaster> objRoleMasterCol = RoleMaster.SelectSkipAndTake(numberOfRecordsToRetrieve, startRetrievalFromRecordIndex, sortBy); // to use objRoleMasterCol please see the SelectAll() method examples // No need for Examples 1 and 2 because the Collection here is already sorted // Example 2: directly bind to a GridView - for ASP.NET Web Forms // Example 3: loop through all the RoleMaster(s). The example above will only loop for 10 items. }