Ejemplo n.º 1
0
        private static void ConfigurandoRestricoesUnique()
        {
            using (var contexto = new AluraFilmesContexto())
            {
                contexto.LogSQLToConsole();

                var ator1 = new Ator
                {
                    PrimeiroNome = "Emma",
                    UltimoNome   = "Watson"
                };

                var ator2 = new Ator
                {
                    PrimeiroNome = "Emma",
                    UltimoNome   = "Watson"
                };

                contexto.Atores.AddRange(ator1, ator2);
                contexto.SaveChanges();

                var emmaWatson = contexto.Atores
                                 .Where(a => a.PrimeiroNome == "Emma" && a.UltimoNome == "Watson");

                Console.WriteLine($"Total de atores encontrados: {emmaWatson.Count()}");
            }

            Console.ReadLine();
        }
Ejemplo n.º 2
0
        public static void UtilizandoShadowProperties()
        {
            using (var context = new AluraFilmesContext())
            {
                // Adicionando Ator
                var ator = new Ator();
                ator.PrimeiroNome = "Tom";
                ator.UltimoNome   = "Hanks";
                context.Entry(ator).Property("last_update").CurrentValue = DateTime.Now; // Adicionando valor a uma Shadow Property

                context.Atores.Add(ator);
                //context.SaveChanges();

                // Recuperando Ator
                var ator2 = context.Atores.FirstOrDefault();

                Console.WriteLine(ator2);
                Console.WriteLine(context.Entry(ator2).Property("last_update").CurrentValue); // Recuperando valor de uma Shadow Property

                // Listar os 10 atores modificados recentemente
                var atoresMaisRecentesalterados = context.Atores
                                                  .OrderByDescending(a => EF.Property <DateTime>(a, "last_update")) // Ordenando por uma Shadow Property
                                                  .Take(10);

                foreach (var item in atoresMaisRecentesalterados)
                {
                    Console.WriteLine(item + " - " + context.Entry(item).Property("last_update").CurrentValue);
                }
            }
        }
Ejemplo n.º 3
0
        public static void LerPropriedadeShadowProperty()
        {
            // Select na tabela actor

            using (var contexto = new AluraFilmeContexto())
            {
                contexto.LogSQLToConsole();

                var ator = new Ator()
                {
                    PrimeiroNome = "Tom",
                    SegundoNome  = "Hanks"
                };



                // Informar uma coluna que existe no banco de dados mas não está declarada na classe
                // Shadow Property
                //contexto.Entry(ator).Property("last_update").CurrentValue = DateTime.Now;

                contexto.Atores.Add(ator);

                contexto.SaveChanges();

                Console.ReadLine();
            }
        }
Ejemplo n.º 4
0
        private static void CadastroDeAtor()
        {
            using (var contexto = new AluraFilmesContexto())
            {
                contexto.LogSQLToConsole();

                Ator ator = new Ator()
                {
                    PrimeiroNome = "Will",
                    UltimoNome   = "Smith"
                };
                contexto.Entry(ator).Property("last_update").CurrentValue = DateTime.Now;

                contexto.Atores.Add(ator);
                contexto.SaveChanges();
            }
        }
Ejemplo n.º 5
0
        private static void DefinindoShadowProperties()
        {
            using (var contexto = new AluraFilmesContexto())
            {
                contexto.LogSQLToConsole();

                var ator = new Ator
                {
                    PrimeiroNome = "Tom",
                    UltimoNome   = "Hanks"
                };

                contexto.Entry(ator).Property <DateTime>("last_update").CurrentValue = DateTime.Now;

                contexto.Atores.Add(ator);

                contexto.SaveChanges();
            }

            Console.ReadLine();
        }
Ejemplo n.º 6
0
        public static void CriandoChaveUnique()
        {
            using (var contexto = new AluraFilmeContexto())
            {
                contexto.LogSQLToConsole();

                var ator1 = new Ator {
                    PrimeiroNome = "Emma", SegundoNome = "Watson"
                };
                var ator2 = new Ator {
                    PrimeiroNome = "Emma", SegundoNome = "Watson"
                };
                contexto.Atores.AddRange(ator1, ator2);
                contexto.SaveChanges();

                var emmaWatson = contexto.Atores
                                 .Where(a => a.PrimeiroNome == "Emma" && a.SegundoNome == "Watson");

                Console.WriteLine($"Total de atores encontrados: {emmaWatson.Count()}.");
            }
            Console.ReadLine();
        }
Ejemplo n.º 7
0
        static void Main2(string[] args)
        {
            using (var context = new AluraFilmesContexto())
            {
                context.LogSQLToConsole();
                //chama o metodo de logar o sql do entity
                //foreach (var ator in context.Atores)
                //{
                //    System.Console.WriteLine($"ator: {ator}");
                //}
                var ator = new Ator();
                ator.PrimeiroNome = "Tom";
                ator.UltimoNome   = "Hanks";
                //como setar valor de uma shaddow property se nao é definido no builder
                //context.Entry(actor).Property("last_update").CurrentValue = DateTime.Now;
                context.Atores.Add(ator);
                context.SaveChanges();
                //recuperar valores de shadow properties
                Console.WriteLine(context.Entry(ator).Property("last_update"));

                //listar os dez primeiros atores ordenados por last update de forma decrescente
                var atores = context.Atores//query em cima do conjunto de atores
                             .OrderByDescending(a => EF.Property <DateTime>(a, "last_update"))
                             .Take(10);
                foreach (var ator1 in atores)
                {
                    Console.WriteLine(ator1 + " " + context.Entry(ator1).Property("last_update").CurrentValue);
                }
                //para atribuir:
                //contexto.Entry(aluno)
                //    .Property("nota_inicial")
                //    .CurrentValue = 8;

                //para recuperar:
                //var nota = contexto.Entry(aluno)
                //    .Property("nota_inicial")
                //    .CurrentValue;
            }
        }