public JsonResult Search(GridSettings gridSettings) { CommunityTopicSearchFilter filter = new CommunityTopicSearchFilter(); if (gridSettings.IsSearch) { filter.Title = gridSettings.Where.rules.Any(r => r.field == "Title") ? gridSettings.Where.rules.FirstOrDefault(r => r.field == "Title").data : string.Empty; } int totalRecords = 0; var topics = communityService.Search(filter, gridSettings.SortColumn, gridSettings.SortOrder, gridSettings.PageSize, gridSettings.PageIndex, out totalRecords); var jsonData = new { total = totalRecords / gridSettings.PageSize + 1, page = gridSettings.PageIndex, records = totalRecords, rows = ( from a in topics select new { ID = a.ID, Title = a.Title, InsertDate = a.InsertDate } ) }; JsonResult result = Json(jsonData); return(result); }
public IEnumerable<CommunityTopic> Search(CommunityTopicSearchFilter filter, string sortColumn, string sortOrder, int pageSize, int pageIndex, out int totalRecords) { IEnumerable<CommunityTopic> topics = context.CommunityTopics; if (!string.IsNullOrEmpty(filter.Title)) { topics = topics.Where(t => t.Title.ToLower().Contains(filter.Title.ToLower())); } totalRecords = topics.Count(); return topics.OrderByDescending(item => item.InsertDate).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToList(); }
public IEnumerable <CommunityTopic> Search(CommunityTopicSearchFilter filter, string sortColumn, string sortOrder, int pageSize, int pageIndex, out int totalRecords) { IEnumerable <CommunityTopic> topics = context.CommunityTopics; if (!string.IsNullOrEmpty(filter.Title)) { topics = topics.Where(t => t.Title.ToLower().Contains(filter.Title.ToLower())); } totalRecords = topics.Count(); return(topics.OrderByDescending(item => item.InsertDate).Skip((pageIndex - 1) * pageSize).Take(pageSize).ToList()); }