Ejemplo n.º 1
0
        private static void AtualizarDados()
        {
            using var db = new Data.ApplicationContext();
            // var cliente = db.Clientes.FirstOrDefault(p => p.Id == 1);
            // var cliente = db.Clientes.Find(1); // como você já sabe o ID, pesquise por find
            //cliente.Nome = "Cliente Alterado passo 2";

            var cliente = new Cliente
            {
                Id = 1
            };

            var clienteDesconectado = new
            {
                Nome     = "Cliente Desconectado",
                Telefone = "987786554"
            };

            db.Attach(cliente);
            db.Entry(cliente).CurrentValues.SetValues(clienteDesconectado);

            // db.Entry(cliente).State = EntityState.Modified;
            // db.Clientes.Update(cliente); Sobrescreve todas as propriedades, mesmo aquelas que não foram alteradas
            // Você pode remover essa linha de código
            db.SaveChanges();
        }
Ejemplo n.º 2
0
        private static void UpdateEntity()
        {
            using var db = new Data.ApplicationContext();

            //var cliente = db.Clientes.Find(1);
            //cliente.Nome = "cliente updated again";

            var cliente = new Cliente
            {
                Id = 1
            };
            var clienteDTO = new
            {
                Nome     = "cliente updated",
                Telefone = "61985465858"
            };

            // update entry without find
            db.Attach(cliente);
            db.Entry(cliente).CurrentValues.SetValues(clienteDTO);


            //db.Clientes.Update(cliente); // this will update all entity fields
            db.SaveChanges();
        }
Ejemplo n.º 3
0
        private static void AtualizaCamposDesconectado()
        {
            /*
             *  Quando os dados ainda não estão estanciados.
             *  -> Temos um frontend e o usuário está preenchendo os dados em formulário.
             *  -> Envimos os dados para uma API, e essa API em acesso aos BD.
             *  -> Assim, a api trata essa inserção
             *  -> Recebemos o id do cliente, no caso 1
             *  -> E os dados estão em outro objeto NovoCliente
             *  -> somente alguns campos sofrem alteração
             */
            using var db = new Data.ApplicationContext();

            var cliente = new Cliente
            {
                Id = 1
            };

            var novoCliente = new
            {
                Nome     = "José",
                Telefone = "5187542154"
            };

            db.Attach(cliente);                                     //anexa o cliente
            db.Entry(cliente).CurrentValues.SetValues(novoCliente); //rastreia
        }
Ejemplo n.º 4
0
        private static void AtualizarDados()
        {
            using var db = new Data.ApplicationContext();
            //var cliente = db.Clientes.Find(1);

            var cliente = new Cliente
            {
                Id = 1
            };

            var clienteDesconectado = new
            {
                Nome     = "Cliente desconhecido 2",
                Telefone = "76555698885"
            };

            db.Attach(cliente);
            db.Entry(cliente).CurrentValues.SetValues(clienteDesconectado);

            //cliente.Nome = "Leandro Peres Atualizado";

            //db.Entry(cliente).State = EntityState.Modified;

            //db.Clientes.Update(cliente);
            db.SaveChanges();
        }
        private static void AtualizarDados()
        {
            var db = new Data.ApplicationContext();

            //var cliente = db.Clientes.Find(1);

            var cliente = new Cliente
            {
                Id = 1
            };

            var clienteDesconectado = new
            {
                Nome     = "Cliente Desconectado 3",
                Telefone = "0101010101"
            };

            db.Attach(cliente);

            db.Entry(cliente).CurrentValues.SetValues(clienteDesconectado);

            //db.Clientes.Update(cliente);

            db.SaveChanges();
        }
Ejemplo n.º 6
0
        private static void RemoverRegistro()
        {
            using var db = new Data.ApplicationContext();
            var cliente = db.Clientes.Find(2);

            // db.Clientes.Remove(cliente);
            // db.Remove(cliente);
            db.Entry(cliente).State = EntityState.Deleted;
            db.SaveChanges();
        }
Ejemplo n.º 7
0
        private static void RemoverRegistroDesconectado()
        {
            using var db = new Data.ApplicationContext();
            var cliente = new Cliente {
                Id = 3
            };

            db.Entry(cliente).State = EntityState.Deleted;
            db.SaveChanges();
        }
Ejemplo n.º 8
0
        private static void DeleteEntity()
        {
            using var db = new Data.ApplicationContext();

            var cliente = db.Clientes.Find(3);

            //var cliente = new Cliente{ Id = 4 }; // delete without find

            //db.Clientes.Remove(cliente);
            db.Entry(cliente).State = EntityState.Deleted;

            db.SaveChanges();
        }
Ejemplo n.º 9
0
        private static void AtualizarDadosDesconectado()
        {
            using var db = new Data.ApplicationContext();
            var cliente             = db.Clientes.Find(1);
            var clienteDesconectado = new
            {
                Nome     = "Cliente Desconectado",
                Telefone = "555555555"
            };

            db.Entry(cliente).CurrentValues.SetValues(clienteDesconectado);
            db.SaveChanges();
        }
Ejemplo n.º 10
0
        private static void RemoverRegistro()
        {
            using var db = new Data.ApplicationContext();

            var cliente = InserirCliente(db);

            db.Clientes.Remove(cliente);

            //db.SaveChanges();
            //db.Remove(cliente);
            db.Entry(cliente).State = EntityState.Deleted;

            Console.WriteLine($"Cliente {cliente.Id} removido");
        }
Ejemplo n.º 11
0
        private static void RemoverRegistro()
        {
            using var db = new Data.ApplicationContext();
            //var cliente = db.Clientes.Find(2); // o find utiliza a chave primária da entidade
            // db.Clientes.Remove(cliente); ou
            // db.Remove(cliente); ou
            // db.Entry(cliente).State = EntityState.Deleted;
            // db.SaveChanges();

            // Forma desconectada
            var cliente = new { id = 3 };

            db.Entry(cliente).State = EntityState.Deleted;
            db.SaveChanges();
        }
Ejemplo n.º 12
0
        private static void AtualizarDados()
        {
            using var db = new Data.ApplicationContext();

            #region Update 1

            //var cliente = db.Clientes.Find(1);
            //cliente.Nome = "Cliente Alterado Passo 1";
            //db.Clientes.Update(cliente); // Altera todas as colunas

            #endregion

            #region Update 2

            //var cliente = db.Clientes.FirstOrDefault(p => p.Id == 1);
            //cliente.Nome = "Cliente Alterado Passo 2";

            #endregion

            #region Update 3

            //var cliente = db.Clientes.FirstOrDefault(p => p.Id == 1);
            //cliente.Nome = "Cliente Alterado Passo 3";
            //db.Entry(cliente).State = EntityState.Modified;

            #endregion

            #region Update 4

            var cliente = new Cliente
            {
                Id = 1
            };

            var clienteDesconectado = new
            {
                Nome     = "Cliente Desconectado Passo 4",
                Telefone = "7966669999"
            };

            db.Attach(cliente);
            db.Entry(cliente).CurrentValues.SetValues(clienteDesconectado);

            #endregion

            db.SaveChanges();
        }
Ejemplo n.º 13
0
        private static void AtualizarDadosDesconectado2()
        {
            using var db = new Data.ApplicationContext();
            var cliente = new Cliente
            {
                Id = 1
            };

            var clienteDesconectado = new
            {
                Nome     = "Cliente Desconectado Passo 2",
                Telefone = "666666666"
            };

            db.Attach(cliente); // Começa a rastrear o objeto
            db.Entry(cliente).CurrentValues.SetValues(clienteDesconectado);
            db.SaveChanges();
        }
Ejemplo n.º 14
0
        private static void DeletarDados()
        {
            using var db = new Data.ApplicationContext();

            //var cliente = db.Clientes.Find(1); // método Find busca direto pelo ID;

            var clienteId = new Cliente {
                Id = 1
            };

            var clienteToRemove = db.Clientes.Where(p => p.Id == clienteId.Id);

            db.Remove(clienteToRemove);

            //ou da forma desconectada

            db.Entry(clienteToRemove).State = EntityState.Deleted;
            db.SaveChanges();
        }
Ejemplo n.º 15
0
        private static void AtualizarDados02()
        {
            using var db = new Data.ApplicationContext();

            var cliente = new Cliente
            {
                Id = 1
            };

            var clienteDesconectado = new
            {
                Nome     = "Cliente Desconectado Passo 3",
                Telefone = "991541163"
            };

            db.Attach(cliente);
            db.Entry(cliente).CurrentValues.SetValues(clienteDesconectado);

            db.SaveChanges();
        }
Ejemplo n.º 16
0
        private static void InserirDados()
        {
            var produto = new Produto
            {
                Descricao    = "Produto Teste",
                CodigoBarras = "1234567891231",
                Valor        = 10m,
                TipoProduto  = TipoProduto.MercadoriaParaRevenda,
                Ativo        = true
            };

            using var db = new Data.ApplicationContext();
            db.Produtos.Add(produto);
            db.Set <Produto>().Add(produto);
            db.Entry(produto).State = EntityState.Added;
            db.Add(produto);

            var registros = db.SaveChanges();

            Console.WriteLine($"Total Registro(s): {registros}");
        }
Ejemplo n.º 17
0
        private static void RemoverRegistro()
        {
            using var db = new Data.ApplicationContext();

            #region Delete 1

            //var cliente = db.Clientes.Find(2);
            ////db.Clientes.Remove(cliente);
            //db.Remove(cliente);

            #endregion

            #region Delete 2

            var cliente = new Cliente {
                Id = 3
            };
            db.Entry(cliente).State = EntityState.Deleted;

            #endregion

            db.SaveChanges();
        }
Ejemplo n.º 18
0
        private static void AtualizarDados()
        {
            using var db = new Data.ApplicationContext();

            var cliente = db.Clientes.Find(1);

            //Atualiza tudo!
            //db.Clientes.Update(cliente);
            //db.SaveChanges();

            //Atualiza só o nome
            //cliente.Nome = $"Cliente Modificado {DateTime.Now} ";
            //db.SaveChanges();

            //Outra forma de atualizar somente alguns campos
            var clienteDesconectado = new
            {
                Nome     = "Cliente Desconectado",
                Telefone = "6130000000"
            };

            db.Entry(cliente).CurrentValues.SetValues(clienteDesconectado);
            db.SaveChanges();
        }