示例#1
0
        private static void IncluirPromocao()
        {
            using (var contexto = new Contexto())
            {
                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.IncluiProduto(item);
                }

                contexto.Promocoes.Add(promocao);

                ExibeEntries(contexto.ChangeTracker.Entries());

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

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

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

                var produto = contexto
                              .Produtos
                              .Where(p => p.Id == 9004)
                              .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);
                }
            }
        }
示例#3
0
        private static void ExibeProdutosDaPromocao()
        {
            using (var contexto2 = new Contexto())
            {
                var serviceProvider = contexto2.GetInfrastructure <IServiceProvider>();
                var loggerFactory   = serviceProvider.GetService <ILoggerFactory>();
                loggerFactory.AddProvider(SqlLoggerProvider.Create());

                var promocao = contexto2
                               .Promocoes
                               .Include(p => p.Produtos)
                               .ThenInclude(pp => pp.Produto)
                               .FirstOrDefault();

                Console.WriteLine("\nMostrando os produtos da promoção...");
                foreach (var item in promocao.Produtos)
                {
                    Console.WriteLine(item.Produto);
                }
            }
        }
示例#4
0
        private static void MuitosParaMuitos()
        {
            var p1 = new Produto()
            {
                Nome = "Suco de Laranja", Categoria = "Bebidas", PrecoUnitario = 8.79, Unidade = "Litros"
            };
            var p2 = new Produto()
            {
                Nome = "Café", Categoria = "Bebidas", PrecoUnitario = 12.45, Unidade = "Gramas"
            };
            var p3 = new Produto()
            {
                Nome = "Macarrão", Categoria = "Alimentos", PrecoUnitario = 4.23, Unidade = "Gramas"
            };

            var promocaoDePascoa = new Promocao();

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

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

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


                //contexto.Promocoes.Add(promocaoDePascoa);
                var promocao = contexto.Promocoes.Find(3);
                contexto.Promocoes.Remove(promocao);
                contexto.SaveChanges();
            }
        }
示例#5
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 Contexto())
            {
                var serviceProvider = contexto.GetInfrastructure <IServiceProvider>();
                var loggerFactory   = serviceProvider.GetService <ILoggerFactory>();
                loggerFactory.AddProvider(SqlLoggerProvider.Create());

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