void List(string search = null) { Device.BeginInvokeOnMainThread(async() => { try { IsRefreshing = true; IList <Promocao> promocoes = new List <Promocao>(); if (search == null) { //Recuperar as promocoes promocoes = await _logic.ListAsync(); _promocoesFiltered = promocoes; } else { //Filtrar as promocoes promocoes = _promocoesFiltered .Where(x => x.Titulo.Trim().ToLower().Contains(search.Trim().ToLower()) || x.Descricao.Trim().ToLower().Contains(search.Trim().ToLower()) ) .ToList(); } Model = new ObservableCollection <Promocao>(promocoes); ErrorMessage = promocoes.Count == 0 ? "Nenhuma promoção disponível." : null; IsRefreshing = false; } catch (Exception) { Model = null; IsRefreshing = false; ErrorMessage = "Não foi possível conectar-se ao servidor, tente novamente em breve."; } }); }
public async Task <IEnumerable <Promocao> > Get() => await _logic.ListAsync();