示例#1
0
        static void Main(string[] args)
        {
            using (var contexto = new LojaContext())
            {
                var serviceProvider = contexto.GetInfrastructure <IServiceProvider>();
                var loggerFactory   = serviceProvider.GetService <ILoggerFactory>();
                loggerFactory.AddProvider(SqlLoggerProvider.Create());

                var cliente = contexto
                              .Clientes
                              .Include(e => e.EnderecoDeEntrega)
                              .FirstOrDefault();

                Console.WriteLine($"Endereço de entrega: {cliente.EnderecoDeEntrega.Logradouro}");

                var produto = contexto
                              .Produtos
                              .Where(p => p.Id == 2)
                              .FirstOrDefault();

                contexto.Entry(produto)
                .Collection(p => p.Compras)
                .Query()
                .Where(c => c.Preco > 10)
                .Load();

                Console.WriteLine($"Mostrando as compras do produto: {produto.Nome}");
                foreach (var item in produto.Compras)
                {
                    Console.WriteLine("\t" + item);
                }
                Console.ReadKey();
            }
        }
示例#2
0
        private static void IncluirPromocao()
        {
            using (var contexto = new LojaContext())
            {
                var serviceProvider = contexto.GetInfrastructure <IServiceProvider>();
                var loggerFactory   = serviceProvider.GetService <ILoggerFactory>();
                loggerFactory.AddProvider(SqlLoggerProvider.Create());

                var promocao = new Promocao();
                promocao.Descricao   = "Queima Total Janeiro 2017";
                promocao.DataInicio  = new DateTime(2017, 1, 1);
                promocao.DataTermino = new DateTime(2017, 1, 31);

                var produtos = contexto
                               .Produtos
                               .Where(p => p.Categoria == "Bebidas")
                               .ToList();

                foreach (var item in produtos)
                {
                    promocao.IncluirProduto(item);
                }

                contexto.Promocoes.Add(promocao);

                ExibeEntries(contexto.ChangeTracker.Entries());

                contexto.SaveChanges();
            }
        }
示例#3
0
        private static void MuitosParaMuitos()
        {
            var p1 = new Produto()
            {
                Nome = "Suco de Laranja", Categoria = "Bebidas", PrecoUnitario = 8.99
            };
            var p2 = new Produto()
            {
                Nome = "Café", Categoria = "Alimentos", PrecoUnitario = 6.00
            };
            var p3 = new Produto()
            {
                Nome = "Suco de Acerola", Categoria = "Bebidas", PrecoUnitario = 8.99
            };

            var promocaoDePascoa = new Promocao();

            promocaoDePascoa.Descricao   = "Páscoa Feliz";
            promocaoDePascoa.DataInicio  = DateTime.Now;
            promocaoDePascoa.DataTermino = DateTime.Now.AddMonths(3);

            promocaoDePascoa.IncluirProduto(p1);
            promocaoDePascoa.IncluirProduto(p2);
            promocaoDePascoa.IncluirProduto(p3);

            using (var contexto = new LojaContext())
            {
                var serviceProvider = contexto.GetInfrastructure <IServiceProvider>();
                var loggerFactory   = serviceProvider.GetService <ILoggerFactory>();
                loggerFactory.AddProvider(SqlLoggerProvider.Create());

                //contexto.Promocoes.Add(promocaoDePascoa);
                var promocao = contexto.Promocoes.Find(1);
                contexto.Promocoes.Remove(promocao);
                //ExibeEntries(contexto.ChangeTracker.Entries());
                contexto.SaveChanges();
            }
        }
示例#4
0
        private static void UmparaUm()
        {
            var fulano = new Cliente();

            fulano.Nome = "Fulaninho de Tal";
            fulano.EnderecoDeEntrega = new Endereco()
            {
                Numero      = 12,
                Logradouro  = "Rua dos Inválidos",
                Complemento = "sobrado",
                Bairro      = "Centro",
                Cidade      = "Cidade"
            };

            using (var contexto = new LojaContext())
            {
                var serviceProvider = contexto.GetInfrastructure <IServiceProvider>();
                var loggerFactory   = serviceProvider.GetService <ILoggerFactory>();
                loggerFactory.AddProvider(SqlLoggerProvider.Create());

                contexto.Clientes.Add(fulano);
                contexto.SaveChanges();
            }
        }