using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;
namespace Alura.Loja.Testes.ConsoleApp { class Program { static void Main(string[] args) { // GravarUsandoAdoNet(); // GravarUsandoEntity(); // RecuperaProdutos(); // ExcluirProdutos(); // RecuperaProdutos(); AtualizaProduto(); }
private static void AtualizaProduto() { GravarUsandoEntity(); RecuperaProdutos();
using (var repo = new ProdutoDAOEntity()) { Produto primeiro = repo.Produtos.First(); primeiro.Nome = "Nome alterado"; repo.Atualizar(primeiro); } RecuperaProdutos(); }
private static void ExcluirProdutos() { using(var repo = new ProdutoDAOEntity()) { IList produtos = repo.Produtos(); Console.WriteLine("Foram encontrados {0} produtos.", produtos.Count); foreach(var item in produtos) { repo.Remover(item); } } }
private static void RecuperaProdutos() { using (var repo = new ProdutoDAOEntity()) { IList produtos = repo.Produtos(); foreach (var item in produtos) { Console.WriteLine(item.Nome); } } }
private static void GravarUsandoEntity() { Produto p = new Produto(); p.Nome = "Harry Potter e a Ordem da Fênix"; p.Categoria = "Livros"; p.Preco = 19.89;
using (var contexto = new ProdutoDAOEntity()) { contexto.Adicionar(p); } }
private static void GravarUsandoAdoNet() { Produto p = new Produto(); p.Nome = "Harry Potter e a Ordem da Fênix"; p.Categoria = "Livros"; p.Preco = 19.89;
using (var repo = new ProdutoDAO()) { repo.Adicionar(p); } } } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;
namespace Alura.Loja.Testes.ConsoleApp { class ProdutoDAOEntity : IProdutoDAO, IDisposable { private LojaContext contexto;
public ProdutoDAOEntity() { this.contexto = new LojaContext(); }
public void Adicionar(Produto p) { contexto.Produtos.Add(p); contexto.SaveChanges(); }
public void Atualizar(Produto p) { contexto.Produtos.Update(p); contexto.SaveChanges(); }
public void Dispose() { contexto.Dispose(); }
public IList Produtos() { return contexto.Produtos.ToList(); }
public void Remover(Produto p) { contexto.Produtos.Remove(p); contexto.SaveChanges(); } } }