/// <summary> /// Prepare paged setting list model /// </summary> /// <param name="searchModel">Setting search model</param> /// <returns>Setting list model</returns> public virtual SettingListModel PrepareSettingListModel(SettingSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get settings var settings = _settingService.GetAllSettings().AsQueryable(); //filter settings if (!string.IsNullOrEmpty(searchModel.SearchSettingName)) { settings = settings.Where(setting => setting.Name.ToLowerInvariant().Contains(searchModel.SearchSettingName.ToLowerInvariant())); } if (!string.IsNullOrEmpty(searchModel.SearchSettingValue)) { settings = settings.Where(setting => setting.Value.ToLowerInvariant().Contains(searchModel.SearchSettingValue.ToLowerInvariant())); } var pagedSettings = settings.ToList().ToPagedList(searchModel); //prepare list model var model = new SettingListModel().PrepareToGrid(searchModel, pagedSettings, () => { return(pagedSettings.Select(setting => { //fill in model values from the entity var settingModel = setting.ToModel <SettingModel>(); return settingModel; })); }); return(model); }
public async Task <IActionResult> Setting() { SettingListModel model = new SettingListModel(); var result = await _crudService.GetAll <SettingViewModel>(Token, SettingService.SettingEntity); if (result.Success) { model.Settings = result.Values.Select(s => new SettingViewModel { Id = s.Id, SettingName = s.SettingName, SettingScope = s.SettingScope, Value = s.Value }).OrderBy(s => s.SettingScope).ThenBy(s => s.SettingName).ToList(); } else { AddMessageToModel(model, result.Message); } return(View("Setting/Index", model)); }