public string Search(ProgramSearchRequestDto searchModel) { var gridParam = GetGridParams(); var list = _programService.Search(searchModel, ref gridParam); return(JSONHelper.ToJson(list, gridParam == null ? list.Count : gridParam.TotalCount)); }
public List <ProgramSearchResultDto> Search(ProgramSearchRequestDto searchRequest, ref GridParams gridParams) { var query = from program in _programRepository.Table join parent in _programRepository.Table on program.ParentID equals parent.ProgramID select new ProgramSearchResultDto() { ProgramID = program.ProgramID, ProgramName = program.ProgramName, ParentID = program.ParentID, ParentName = parent.ProgramName, Url = program.Url, Icon = program.Icon, IsVisible = program.IsVisible, Priority = program.Priority, StatusFlag = program.StatusFlag }; query = query.Where(b => !( (searchRequest.ProgramID != 0 && b.ProgramID != searchRequest.ProgramID) || (!string.IsNullOrEmpty(searchRequest.ProgramName) && b.ProgramName.Trim() != searchRequest.ProgramName) || (searchRequest.ParentID != 0 && b.ParentID != searchRequest.ParentID) )); gridParams.TotalCount = query.Count(); return(QueryExtensions.SortAndPage(query, gridParams).ToList()); }