public void Alterar(Produto prod)
        {
            var item = this.Consultar(prod.ProdutoId);

            item.Descricao  = prod.Descricao;
            item.Custo      = prod.Custo;
            item.Margem     = prod.Margem;
            item.ValorVenda = prod.ValorVenda;

            ctx.Produtos.Attach(item);
            ctx.Entry(item).State = System.Data.Entity.EntityState.Modified;
            ctx.SaveChanges();
        }
        public void Alterar(Funcionario fun)
        {
            Funcionario funcad = this.Consultar(fun.FuncionarioId);

            funcad.Cargo      = fun.Cargo;
            funcad.Ativo      = fun.Ativo;
            funcad.Email      = fun.Email;
            funcad.Fone       = fun.Fone;
            funcad.Nascimento = fun.Nascimento;
            funcad.Nome       = fun.Nome;
            funcad.Senha      = fun.Senha;

            // anexa novamente ao contexto o funcionario que veio e teve as propriedades alteradas
            ctx.Funcionarios.Attach(funcad);
            // informa o entity que o estado do objeto "funcad" é "modificado"
            ctx.Entry(funcad).State = System.Data.Entity.EntityState.Modified;
            // salva as alterações
            ctx.SaveChanges();
        }