public IActionResult AuditLogTablePartialView(string name = "", string type = "", string message = "", int page = 1, int pageSize = 20, FilterByDate filterOption = FilterByDate.All, string from = null, string to = null, SortByColumn sortOption = SortByColumn.CreationDate, bool descending = true) { ViewBag.FilterOption = filterOption; ViewBag.FromDate = from; ViewBag.ToDate = to; ViewBag.SortOption = sortOption; ViewBag.IdDescending = descending; ViewBag.Name = name; ViewBag.Type = type; ViewBag.Message = message; var auditLogs = getAllAuditLogFactory.Create().Invoke(); auditLogs = FilterLogs(name, type, message, auditLogs); if (filterOption != FilterByDate.All) { auditLogs = FilterByDateAuditLogs(auditLogs, filterOption, from, to); } ViewBag.TotalRows = auditLogs.Count(); ViewBag.UsersCount = auditLogs.Count() / pageSize; ViewBag.Page = page; ViewBag.RowsPerPage = pageSize; auditLogs = SortAuditLogs(auditLogs, sortOption, descending).Skip(pageSize * (page - 1)).Take(pageSize); return(PartialView("Partials/AuditLogTable", auditLogs)); }
public IOrderedEnumerable <ProductEntity> Sort(SortByColumn sortBy, Func <ProductEntity, object> sort) { if ((int)sortBy % 2 == 0) { return(_dbContext.ProductSet.OrderBy(sort)); } return(_dbContext.ProductSet.OrderByDescending(sort)); }
/// <summary> /// Sort ascending clicked. /// </summary> void sortAscendingDescending_Click(object sender, EventArgs e) { bool ascending = sender == this._mnuSortAscending; if (this._sortOrder != null && this._sortOrder._col == this._clickedColumn && this._sortOrder._ascending == ascending) { this._sortOrder = null; } else { this._sortOrder = new SortByColumn(this._clickedColumn, ascending); } this.Rebuild(EListInvalids.Sorted); }
public static IEnumerable <Student> SearchByRequest(IEnumerable <Student> students, int page, int perPage, SortByColumn sortBy, Func <Student, object> sort) { if ((int)sortBy % 2 == 0) { return(students.OrderBy(sort) .Skip(page * perPage) .Take(perPage).ToList()); } return(students.OrderByDescending(sort) .Skip(page * perPage) .Take(perPage).ToList()); }
private IEnumerable <AuditLogModel> SortAuditLogs(IEnumerable <AuditLogModel> auditLogs, SortByColumn sortOption, bool descending) { switch (sortOption) { case SortByColumn.Name: return(descending ? auditLogs.OrderByDescending(m => m.UserName) : auditLogs.OrderBy(m => m.UserName)); case SortByColumn.CreationDate: return(descending ? auditLogs.OrderByDescending(m => m.CreationDate) : auditLogs.OrderBy(m => m.CreationDate)); case SortByColumn.EventMessage: return(descending ? auditLogs.OrderByDescending(m => m.EventMessage) : auditLogs.OrderBy(m => m.EventMessage)); case SortByColumn.EventType: return(descending ? auditLogs.OrderByDescending(m => m.EventType) : auditLogs.OrderBy(m => m.EventType)); default: return(null); } }