Example #1
0
        private static void AulaExibirChangeTracker(SwitchContext dbcontext)
        {
            var usuario0 = CriarUsuario("usuario0");

            Console.WriteLine("Criando usuario0..");
            Console.WriteLine("Verificando o ChangeTracker de usuario0");
            dbcontext.Usuarios.Add(usuario0);
            ExibirChangeTracker(dbcontext.ChangeTracker);

            // #region Operations

            ////Obtendo
            var usuario1 = dbcontext.Usuarios.FirstOrDefault(u => u.Nome == "usuarioNovo1");

            Console.WriteLine("Obtendo usuario1");
            Console.WriteLine("Verificando o ChangeTracker de usuario1");
            ExibirChangeTracker(dbcontext.ChangeTracker);

            ////Editando
            Console.WriteLine("Editando usuario1");
            usuario1.Nome = "NovoNomeUsuario";
            Console.WriteLine("Verificando o ChangeTracker de usuario1");
            ExibirChangeTracker(dbcontext.ChangeTracker);

            ////Adicionando Novo
            var usuarioNovo2 = CriarUsuario("usuarioNovo2");

            Console.WriteLine("Adicionando usuarioNovo2");
            dbcontext.Usuarios.Add(usuarioNovo2);
            Console.WriteLine("Verificando o ChangeTracker de usuarioNovo2");
            ExibirChangeTracker(dbcontext.ChangeTracker);

            ////Deletando
            Console.WriteLine("Deletando usuario1");
            Console.WriteLine("Verificando o ChangeTracker de usuario1");
            dbcontext.Usuarios.Remove(usuario1);
            ExibirChangeTracker(dbcontext.ChangeTracker);

            ////Detached/desanexado
            var usuario3 = CriarUsuario("Usuario3");

            Console.WriteLine("Status do Usuario3");
            Console.WriteLine(dbcontext.Entry(usuario3).State);
            //#endregion
        }