async Task <IEnumerable <Administrator> > GetSource(vm.AdministratorsList info, bool all = false) { var query = Database.Of <Administrator>(); var result = await query.GetList(); if (info.FullSearch.HasValue()) { var keywords = info.FullSearch.Split(' ').Trim().ToArray(); result = result.Where(item => item.ToString("F").ContainsAll(keywords, caseSensitive: false)); } result = info.Sort.Apply(result); result = result.ToList(); info.Paging.TotalItemsCount = result.Count(); if (all) { return(result); } else { return(result.TakePage(info.Paging)); } return(result); }
public async Task <ActionResult> Delete(vm.AdministratorsList info, [Bind(Prefix = "list.item")] Administrator item) { try { await Database.Delete(item); } catch (Exception ex) { return(Notify(ex.Message, "error")); } await TryUpdateModelAsync(info); return(View(info)); }
public async Task OnBound(vm.AdministratorsList info) { info.Items = await GetSource(info) .Select(item => new vm.AdministratorsList.ListItem(item)).ToList(); }
public async Task <ActionResult> Index(vm.AdministratorsList info) { return(View(info)); }