예제 #1
0
        private static void MuitosXMuitos()
        {
            using (var contexto = new LojaContext())
            {
                var p1 = contexto.Produtos.First();
                var p2 = contexto.Produtos.Last();

                var p3 = new Produto()
                {
                    Nome          = "Xiomei Redmi Note 6 PRo",
                    PrecoUnitario = 1200.99,
                    Categoria     = "Telefonia",
                    Unidade       = "Unidade"
                };

                var promo = new Promocao();
                promo.Descricao   = "Black Friday";
                promo.DataInicio  = DateTime.Now;
                promo.DataTermino = DateTime.Now.AddMonths(1);
                promo.IncluirProduto(p1);
                promo.IncluirProduto(p2);
                promo.IncluirProduto(p3);

                contexto.Promocoes.Add(promo);

                var promos = contexto.Promocoes.Find(1);
                contexto.Promocoes.Remove(promos);

                ShowEntries(contexto.ChangeTracker.Entries());
                contexto.SaveChanges();
            }
        }
예제 #2
0
파일: Program.cs 프로젝트: davidapdf/Loja
        private static void MuntosParaMuntos()
        {
            var p1 = new Produto()
            {
                Nome = "Suco", Categoria = "Bebidas", PrecoUnitario = 2.9, Unidade = "Litros"
            };
            var p2 = new Produto()
            {
                Nome = "Cafe", Categoria = "Bebidas", PrecoUnitario = 22.9, Unidade = "Gramas"
            };
            var p3 = new Produto()
            {
                Nome = "Macarrao", Categoria = "Alimentos", PrecoUnitario = 4.2, Unidade = "Gramas"
            };

            var promocaoDePascoa = new Promocao();

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

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


            using (var contexto = new LojaContext())
            {
                //   contexto.Promocoes.Add(promocaoDePascoa);
                var promocao = contexto.Promocoes.Find(1);
                contexto.Promocoes.Remove(promocao);

                contexto.SaveChanges();
            }
        }
예제 #3
0
        private static void PopulandoPromocao()
        {
            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 promocao = new Promocao();

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

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

            using (var context = new LojaContext())
            {
                context.Promocoes.Add(promocao);
                context.SaveChanges();
            }
        }
예제 #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 = "Cafe", Categoria = "Bebidas", PrecoUnitario = 12.45, Unidade = "Gramas"
            };
            var p3 = new Produto()
            {
                Nome = "Macarrao", Categoria = "Alimentos", PrecoUnitario = 4.25, Unidade = "Gramas"
            };


            var promocaoDePacoa = new Promocao();

            promocaoDePacoa.Descricao   = "Pascoa feliz";
            promocaoDePacoa.DataInicio  = DateTime.Now;
            promocaoDePacoa.DataTermino = DateTime.Now.AddMonths(3);

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

            var paoFrances = new Produto()
            {
                Nome          = "Pão Frances",
                PrecoUnitario = 0.40,
                Unidade       = "Unidade",
                Categoria     = "Padaria"
            };

            //var compra = new Compra();
            //compra.Quantidade = 6;
            //compra.Produto = paoFrances;
            //compra.Preco = paoFrances.PrecoUnitario * compra.Quantidade;

            using (var contexto = new LojaContext())
            {
                //contexto.Produtos.Add(promocaoDePacoa);
                var promocao = contexto.Promocoes.Find(3);
                contexto.Promocoes.Remove(promocao);


                contexto.SaveChanges();
            }
        }
예제 #5
0
        private static void IncluirPromocao()
        {
            using (var contexto = new LojaContext())
            {
                var promocao = new Promocao()
                {
                    Descrição   = "Queima Total Janiero 2017",
                    DataInicio  = new DateTime(2017, 1, 1),
                    DataTermino = new DateTime(207, 1, 31)
                };

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

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

                contexto.Promocaos.Add(promocao);

                ExibeEntries(contexto.ChangeTracker.Entries());

                contexto.SaveChanges();
            }
        }
예제 #6
0
        public static void Aula_08_SelectConsulta()
        {
            using (var contexto = new LojaContext())
            {
                var promocao = new Promocao();
                promocao.Descricao    = "Queima Total 2017";
                promocao.DataInicio   = new DateTime(2017, 1, 1);
                promocao.DataTerminio = 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();
            }// no final do using tira o contexto da memória.


            using (var contexto2 = new LojaContext())
            {
                var promocao = contexto2.Promocoes.FirstOrDefault();
                Console.WriteLine("\nMotrando os produtos da promoção...");
                foreach (var item in promocao.Produtos)
                {
                    Console.WriteLine(item.Produto);
                }
            }
        }
예제 #7
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.DataTerminio = 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();
            }
        }
        // RELACIONAMENTO DE MUITOS PARA MUITOS.
        public static void Aula_06()
        {
            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 promocaoDePessoa = new Promocao();

            promocaoDePessoa.Descricao    = "Festival de Férias";
            promocaoDePessoa.DataInicio   = DateTime.Now;
            promocaoDePessoa.DataTerminio = DateTime.Now.AddMonths(3);
            promocaoDePessoa.IncluirProduto(p1);
            promocaoDePessoa.IncluirProduto(p2);
            promocaoDePessoa.IncluirProduto(p3);

            using (var contexto = new LojaContext())
            {
                // Procedimento para pegar o log de consulta do Entity Framework.
                var serviceProvider = contexto.GetInfrastructure <IServiceProvider>();
                var loggerFactory   = serviceProvider.GetService <ILoggerFactory>();
                loggerFactory.AddProvider(SqlLoggerProvider.Create());

                //contexto.Promocoes.Add(promocaoDePessoa);

                var promocao = contexto.Promocoes.Find(1);
                contexto.Promocoes.Remove(promocao);
                Console.WriteLine("***********************************\n\n");
                ExibeEntries(contexto.ChangeTracker.Entries());
                Console.WriteLine("***********************************\n\n");
                contexto.SaveChanges();
                Console.WriteLine("***********************************\n\n");
                ExibeEntries(contexto.ChangeTracker.Entries());


                Console.ReadLine();
            }
        }
예제 #9
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   = "Pascoa Feliz";
            promocaoDePascoa.DataInicio  = DateTime.Now;
            promocaoDePascoa.DataTermino = DateTime.Now.AddMonths(3);

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



            using (var contexto = new LojaContex())
            {
                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();
            }
            Console.ReadLine();
        }
예제 #10
0
        private static void MuitosParaMuitos()
        {
            var p1 = new Produto()
            {
                Nome = "Suco de Laranja", Categoria = "Bebidas", PrecoUnitario = 8.89, Unidade = "Litros"
            };
            var p2 = new Produto()
            {
                Nome = "Suco de Uva", Categoria = "Bebidas", PrecoUnitario = 3.89, Unidade = "Litros"
            };
            var p3 = new Produto()
            {
                Nome = "Suco de Limão", Categoria = "Bebidas", PrecoUnitario = 5.89, Unidade = "Litros"
            };

            var promocaoDePascoa = new Promocao
            {
                Descricao   = "Pascoa",
                DataInicio  = DateTime.Now,
                DataTermino = DateTime.Now.AddMonths(3)
            };

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



            using (var contexto = new LojaContext())
            {
                //log no console
                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);
                contexto.SaveChanges();

                ExibeEntries(contexto.ChangeTracker.Entries());
            }
        }
예제 #11
0
        private static void MuitosParaMuitos()
        {
            Produto p1 = new Produto()
            {
                Nome = "Suco de Laranja", Categoria = "Bebidas", PrecoUnitario = 1.25, Unidade = "Litros"
            };
            Produto p2 = new Produto()
            {
                Nome = "Café", Categoria = "Bebidas", PrecoUnitario = 12.48, Unidade = "Gramas"
            };;
            Produto p3 = new Produto()
            {
                Nome = "Macarrão", Categoria = "Alimentos", PrecoUnitario = 3.79, Unidade = "Gramas"
            };;

            var promocaoDePascoa = new Promocao();

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


            //Adicionando produtos
            promocaoDePascoa.IncluirProduto(p1);
            promocaoDePascoa.IncluirProduto(p2);
            promocaoDePascoa.IncluirProduto(p3);


            //Adicionando a classe de Logger
            using (var contexto = new LojaContext())
            {
                //*** Adicionando Log (para exibir as consultas realizadas pelo Entity) ***
                var serviceProvider = contexto.GetInfrastructure <IServiceProvider>();
                var loggerFactory   = serviceProvider.GetService <ILoggerFactory>();
                loggerFactory.AddProvider(SqlLoggerProvider.Create());
                //*** Fim do Log ***

                //contexto.Promocoes.Add(promocaoDePascoa);
                var promocao = contexto.Promocoes.Find(1);
                contexto.Promocoes.Remove(promocao);
                contexto.SaveChanges();
            }
        }
예제 #12
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 promocaoPascoa = new Promocao();

            promocaoPascoa.Descrição   = "Páscoa Feliz";
            promocaoPascoa.DataInicio  = DateTime.Now;
            promocaoPascoa.DataTermino = DateTime.Now.AddMonths(3);

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


            using (var contexto = new LojaContext())
            {
                //contexto.Promocaos.Add(promocaoPascoa);
                var promocao = contexto.Promocaos.Find(1);


                contexto.Promocaos.Remove(promocao);


                contexto.SaveChanges();
            }
        }
예제 #13
0
        private static void TestePersistencaPromocao()
        {
            var promocao = new Promocao();

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

            using (var context = new LojaContext())
            {
                var produtos = context.Produtos.Where(p => p.Categoria == "Bebidas").ToList();

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

                context.Promocoes.Add(promocao);
                context.SaveChanges();
            }
        }
예제 #14
0
        private static void IncluirPromocao()
        {
            using (var contexto = new LojaContext())
            {
                var promocao = new Promocao();
                promocao.Descricao   = "Queima Total Segundo semestre 2017";
                promocao.DataInicio  = new DateTime(2017, 6, 1);
                promocao.DataTermino = new DateTime(2017, 10, 31);

                var produtos = contexto.Produtos.Where(p => p.Categoria == "Livros").ToList();
                foreach (var p in produtos)
                {
                    promocao.IncluirProduto(p);
                }

                contexto.Promocoes.Add(promocao);

                ExibeEntries(contexto.ChangeTracker.Entries());
                contexto.SaveChanges();
            }
        }
예제 #15
0
파일: Program.cs 프로젝트: davidapdf/Loja
        private static void IncluiPromocao()
        {
            using (var contexto = new LojaContext())
            {
                var promocao = new Promocao();
                promocao.Descricao  = "Queima total";
                promocao.DataInicio = new DateTime(2019, 1, 1);
                promocao.DataFim    = new DateTime(2019, 1, 31);

                var produto = contexto
                              .Produtos
                              .Where(p => p.Categoria == "Bebidas")
                              .ToList();
                foreach (var item in produto)
                {
                    promocao.IncluirProduto(item);
                }

                contexto.Promocoes.Add(promocao);
                contexto.SaveChanges();
            }
        }
예제 #16
0
        private static void IncluirPromocao()
        {
            using (var contexto = new LojaContext())
            {
                var promocao = new Promocao
                {
                    Descricao   = "Queima Total Janeiro 2020",
                    DataInicio  = new DateTime(2020, 1, 1),
                    DataTermino = new DateTime(2020, 1, 31)
                };

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

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

                contexto.Add(promocao);
                contexto.SaveChanges();
            }
        }
예제 #17
0
        static void Main(string[] args)
        {
            // InsertUsingEntity();
            // Console.WriteLine("Produto inserido, gostaria de adicionar mais ? [1] SIM [0]NAO [3] Listar [4] Atualizar Produto [5] Apagar Produto");
            // string tecla;
            // tecla = Console.ReadLine();
            // if(tecla == "0")
            //  Console.WriteLine("Application finished");
            // if (tecla == "1")
            //     InsertUsingEntity();
            // if (tecla == "3")
            //     RecuperarDadosEntity();
            // if (tecla == "4")
            // {
            //     Console.WriteLine("INforme o id do produto a ser atualizado");
            //     var id = Console.ReadLine();
            //     AtualizaProduto(id);

            // }
            // if (tecla == "5")
            // {
            //     var id = Console.ReadLine();
            //     ExcluirProduto(id);
            // }

            using (var contexto = new LojaContext())
            {
                //var p = contexto.Produtos.ToList();
                //foreach (var item in p)
                //{
                //    Console.WriteLine(item);
                //}


                //Console.WriteLine("++++++++++++++");
                //foreach (var item in contexto.ChangeTracker.Entries())
                //{
                //    Console.WriteLine(item.State);
                //    //mostra a referencia do objeto em si e nao só o estado
                //    Console.WriteLine(item.Entity.ToString());
                //}
                // ShowEntries(contexto.ChangeTracker.Entries());

                //var newProduto = new Produto() { Nome = "Alvejante", Categoria = "Limpeza", Preco = 4.5 };
                //contexto.Produtos.Add(newProduto);
                //var p1 = contexto.Produtos.Last();
                //contexto.Produtos.Remove(p1);


                //ShowEntries(contexto.ChangeTracker.Entries());
                //contexto.SaveChanges();
                //ShowEntries(contexto.ChangeTracker.Entries());
                //Migration para toda a aplicação.
                //contexto.Database.Migrate();

                // var pao = new Produto()
                //{
                //    Nome = "Pão Francês",
                //    PrecoUnitario = 0.66,
                //    Unidade = "Unidade",
                //    Categoria = "Padaria"
                //};

                //var compra = new Compra();
                //compra.Quantidade = 6;
                //compra.Produto = pao;
                //compra.Preco = pao.PrecoUnitario * compra.Quantidade;


                //contexto.Compras.Add(compra);
                var prods = contexto.Produtos.Where(p => p.Categoria == "Livros").ToList();
                var promo = new Promocao()
                {
                    Descricao   = "Promo de natal",
                    DataInicio  = DateTime.Now,
                    DataTermino = DateTime.Now.AddMonths(2),
                };
                foreach (var item in prods)
                {
                    promo.IncluirProduto(item);
                }
                contexto.Promocoes.Add(promo);
                ShowEntries(contexto.ChangeTracker.Entries());
                contexto.SaveChanges();

                var pp = contexto.Promocoes.ToList();

                var promocao = contexto
                               .Promocoes
                               .Include(p => p.Produtos)
                               .ThenInclude(ppp => ppp.Produto)
                               .FirstOrDefault()
                ;

                Console.WriteLine("\nMotrando os produtos da promoção...");
                foreach (var item in promocao.Produtos)
                {
                    Console.WriteLine(item.Produto);
                }
            }

            Console.ReadKey();
        }