public Resultado <IList <ListaCompraItem> > ListarPorListaCompra(ListaCompra listaCompra)
        {
            var resultado = new Resultado <IList <ListaCompraItem> >();

            try
            {
                resultado += ListaCompraValidation.Validate(listaCompra, ListaCompraOperation.Consultar);
                if (resultado)
                {
                    resultado = ListaCompraItemRepository.SelecionarPorListaCompra(listaCompra);
                }
            }
            catch (Exception ex)
            {
                resultado += ex;
            }
            return(resultado);
        }
        public Resultado <ListaCompra> Consultar(ListaCompra listaCompra)
        {
            var resultado = new Resultado <ListaCompra>();

            try
            {
                var resultadoValidation = ListaCompraValidation.Validate(listaCompra, ListaCompraOperation.Consultar);
                resultado += resultadoValidation;
                if (resultado)
                {
                    resultado = ListaCompraRepository.Selecionar(listaCompra);
                }
            }
            catch (Exception ex)
            {
                resultado += ex;
            }
            return(resultado);
        }
        public Resultado <ListaCompra> Excluir(ListaCompra listaCompra)
        {
            var resultado = new Resultado <ListaCompra>();

            try
            {
                listaCompra.DataAlteracao = DateTime.Now;
                var resultadoValidation = ListaCompraValidation.Validate(listaCompra, ListaCompraOperation.Excluir);
                resultado += resultadoValidation;
                if (resultado)
                {
                    resultado += ListaCompraRepository.Atualizar(listaCompra);
                    if (resultado)
                    {
                        resultado = ListaCompraRepository.Selecionar(listaCompra);
                    }
                }
            }
            catch (Exception ex)
            {
                resultado += ex;
            }
            return(resultado);
        }