using Microsoft.EntityFrameworkCore;
using System;
namespace Alura.Loja.Testes.ConsoleApp
{
public class LojaContext : DbContext
{
public DbSet<Produto> Produtos { get; set;}
protected override void OnConfiguring(DbContextOptionsBuilder optionBuilder)
{
optionBuilder.UseSqlServer("Server=LUDGERO;Database=LojaDB;User ID=sa;Password=229547;Trusted_Connection=true;");
}
}
}
namespace Alura.Loja.Testes.ConsoleApp
{
public class Produto
{
public int Id { get; internal set; }
public string Nome { get; internal set; }
public string Categoria { get; internal set; }
public double Preco { get; internal set; }
public override string ToString()
{
return $"Id: {this.Id} Título: {this.Nome} Categoria {this.Categoria} Preço: {this.Preco}";
}
}
}
insira seu código aquiusing 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 Excluir(Produto p)
{
contexto.Produtos.Remove(p);
contexto.SaveChanges();
}
public void Alterar(Produto p)
{
contexto.Produtos.Update(p);
contexto.SaveChanges();
}
public IList<Produto> Produtos()
{
return contexto.Produtos.ToList();
}
public void Dispose()
{
contexto.Dispose();
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Alura.Loja.Testes.ConsoleApp
{
public class FuncoesBanco
{
public void Gravar()
{
Produto p = new Produto();
Console.WriteLine("Título: ");
p.Nome = Console.ReadLine();
Console.WriteLine("Categoria: ");
p.Categoria = Console.ReadLine();
Console.WriteLine("Preço: ");
p.Preco = Convert.ToDouble(Console.ReadLine());
using(var contexto = new ProdutoDAOEntity())
{
contexto.Adicionar(p);
}
}
public void Excluir()
{
using (var repo = new ProdutoDAOEntity())
{
var produto = repo.Produtos();
foreach(var p in produto)
{
repo.Excluir(p);
}
}
}
public void ListaDados()
{
using (var repo = new ProdutoDAOEntity())
{
var produto = repo.Produtos();
Console.WriteLine("Foram encontrados {0} registros", produto.Count);
foreach (var p in produto)
{
Console.WriteLine(p.ToString());
Console.WriteLine();
}
}
}
}
}
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)
{
ListaMenu();
}
private static void ListaMenu()
{
var menu = new Menu();
int codigoMenu = 5;
while (codigoMenu != 0)
{
Console.WriteLine("Digite codigo do Menu: ");
Console.WriteLine("1-Cadastrar");
Console.WriteLine("2-Consultar");
Console.WriteLine("3-Excluir");
Console.WriteLine("0-Sair");
codigoMenu = Convert.ToInt32(Console.ReadLine());
menu.ExecutaMenu(codigoMenu);
}
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Alura.Loja.Testes.ConsoleApp
{
public class Menu
{
public void ExecutaMenu(int menu)
{
FuncoesBanco funcoes = new FuncoesBanco();
switch (menu)
{
case 0:
break;
case 1:
funcoes.Gravar();
break;
case 2:
funcoes.ListaDados();
break;
case 3:
funcoes.Excluir();
break;
default:
break;
}
}
private static void RecuperaDados()
{
using (var contexto = new ProdutoDAOEntity())
{
IList<Produto> produtos = contexto.Produtos();
Console.WriteLine("Foram encontrados {0} registros. ", produtos.Count);
foreach (var p in produtos)
{
Console.WriteLine(p.ToString());
};
Console.ReadLine();
}
}
}
}