コード例 #1
0
        public LojaContext() : base()
        {
            var serviceProvider = this.GetInfrastructure <IServiceProvider>();
            var loggerFactory   = serviceProvider.GetService <ILoggerFactory>();

            loggerFactory.AddProvider(SqlLoggerProvider.Create());
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: eriellensouza/Entity
        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 produtos = contexto.Produtos.ToList();
                foreach (var p in produtos)
                {
                    Console.WriteLine(p);
                }

                Console.WriteLine("=================");
                foreach (var e in contexto.ChangeTracker.Entries())
                {
                    Console.WriteLine(e.State);
                }

                var p1 = produtos.Last();
                p1.Nome = "007 - O Espiao Que Me Amava";

                Console.WriteLine("=================");
                foreach (var e in contexto.ChangeTracker.Entries())
                {
                    Console.WriteLine(e.State);
                }

                contexto.SaveChanges();

                //Console.WriteLine("=================");
                //produtos = contexto.Produtos.ToList();
                //foreach (var p in produtos)
                //{
                //    Console.WriteLine(p);
                //}
            }
        }
コード例 #3
0
        static void OldMain2()
        {
            using (var contexto = new LojaContext())
            {
                var serviceProvider = contexto.GetInfrastructure <IServiceProvider>();
                var loggerFactory   = serviceProvider.GetService <ILoggerFactory>();
                loggerFactory.AddProvider(SqlLoggerProvider.Create());

                var produtos = contexto.Produtos.ToList();

                ExibeEntries(contexto.ChangeTracker.Entries());

                //var p1 = produtos.First();
                //p1.Nome = "Censura"; // O SQL chama um Update();

                //var novoProduto = new Produto()
                //{
                //    Nome = "Desinfetante",
                //    Categoria = "Limpeza",
                //    Preco = 2.99
                //};
                //contexto.Produtos.Add(novoProduto); // O SQL chama um Insert();

                var p1 = produtos.Last();
                contexto.Produtos.Remove(p1); // O SQL chama um Delete();

                // var entry = contexto.Entry(novoProduto); // Caso adicionado e deletado antes do SaveChanges();
                // podemos perguntar pelo elemento dessa forma, sendo categorizado como 'Detached' pelo entry.State;

                ExibeEntries(contexto.ChangeTracker.Entries());

                contexto.SaveChanges();

                ExibeEntries(contexto.ChangeTracker.Entries());
            }
        }