public async Task <PagedResultOutput <ContactListDto> > GetContacts(GetContactsInput input) { IQueryable <Contact> all = this._contactRepository.GetAll(); IQueryable <Contact> contacts = all.WhereIf <Contact>(!input.Filter.IsNullOrEmpty(), (Contact p) => p.Title.Contains(input.Filter) || p.Description.Contains(input.Filter) || p.Email.Contains(input.Filter)); int num = await contacts.CountAsync <Contact>(); List <Contact> listAsync = await contacts.OrderBy <Contact>(input.Sorting, new object[0]).PageBy <Contact>(input).ToListAsync <Contact>(); return(new PagedResultOutput <ContactListDto>(num, listAsync.MapTo <List <ContactListDto> >())); }
public ActionResult Index(GetContactsInput input) { return(base.View()); }