Example #1
0
        public void AplicarFiltro()
        {
            if (PesquisaPorNome == null)
            {
                PesquisaPorNome = "";
            }

            var resultado = EstabelecimentosFiltrado.Where(n => n.Nome.ToLowerInvariant()
                                                           .Contains(pesquisaPorNome.ToLowerInvariant().Trim())).ToList();

            var removerDaLista = Estabelecimentos.Except(resultado).ToList();

            foreach (var item in removerDaLista)
            {
                Estabelecimentos.Remove(item);
            }

            for (int index = 0; index < resultado.Count; index++)
            {
                var item = resultado[index];
                if (index + 1 > Estabelecimentos.Count || !Estabelecimentos[index].Equals(item))
                {
                    Estabelecimentos.Insert(index, item);
                }
            }
        }