예제 #1
0
        public static void ExibePessoaComFilhoSemPet()
        {
            using (var contexto = new DesafioPetsContext())
            {
                var resultado = contexto.Pessoas.Where(a => a.QtdFilhos != 0 && !a.Pets.Any());

                Console.WriteLine("Pessoas com Filhos sem pet:");
                foreach (var pessoa in resultado)
                {
                    Console.WriteLine(pessoa.Nome);
                }
            }
        }
예제 #2
0
        static void Main(string[] args)
        {
            using (var db = new DesafioPetsContext()) { SeedDataBase.SeedDb(db); }

            ConsultasBd.ExibePessoasComPet();
            Console.WriteLine();
            ConsultasBd.ExibePessoaComFilhoSemPet();
            Console.WriteLine();
            ConsultasBd.ExibePetsPorPessoa();
            Console.WriteLine();
            ConsultasBd.ExibeAdotadosPorPessoa1();
            Console.WriteLine();
            ConsultasBd.ExibeAdotadosPorPessoa2();
            Console.ReadLine();
        }
예제 #3
0
        public static void ExibeAdotadosPorPessoa2()
        {
            using (var contexto = new DesafioPetsContext())
            {
                var pet = contexto.Pets.Where(p => p.Adotado != false);
                foreach (var s in pet)
                {
                    Console.Write("O pet: " + s.PetId);

                    foreach (var Pessoa in contexto.Pessoas.Where(x => x.Pets.Any()))
                    {
                        if (Pessoa.PessoaId == s.PessoaId)
                        {
                            Console.WriteLine(" Foi adotado pelo(a) " + Pessoa.Nome);
                        }
                    }
                }
            }
        }
예제 #4
0
        public static void ExibePetsPorPessoa()
        {
            using (var contexto = new DesafioPetsContext())
            {
                var resultado = contexto.Pessoas.Where(a => a.Pets.Any());

                Console.WriteLine("Pessoas com seus respectivos pets:");
                foreach (var pessoa in resultado.Include(a => a.Pets))
                {
                    Console.WriteLine("Nome: " + pessoa.Nome);
                    Console.WriteLine("Id dos pet(s): ");
                    foreach (var pet in pessoa.Pets)
                    {
                        Console.WriteLine(pet.PetId);
                    }
                    Console.WriteLine();
                }
            }
        }
예제 #5
0
        public static void ExibeAdotadosPorPessoa1()
        {
            using (var contexto = new DesafioPetsContext())
            {
                foreach (var pessoa in contexto.Pessoas)
                {
                    contexto.Entry(pessoa).Collection(p => p.Pets).Query().Where(p => p.Adotado == true).Load();
                    if (pessoa.Pets.Any())
                    {
                        Console.WriteLine(pessoa.Nome + " Adotou o(s) Pet(s): ");
                    }

                    foreach (var p in pessoa.Pets)
                    {
                        Console.WriteLine(p.PetId);
                    }
                    Console.WriteLine();
                }
            }
        }
예제 #6
0
        public static void SeedDb(DesafioPetsContext context)
        {
            if (!context.Pessoas.Any())
            {
                var pessoas = new List <Pessoa>
                {
                    new Pessoa {
                        Nome = "Francisco", Idade = 40, QtdFilhos = 2
                    },
                    new Pessoa {
                        Nome = "Bob", Idade = 25, QtdFilhos = 0
                    },
                    new Pessoa {
                        Nome = "Marcio", Idade = 30, QtdFilhos = 1
                    },
                    new Pessoa {
                        Nome = "Maria", Idade = 25, QtdFilhos = 0
                    },
                    new Pessoa {
                        Nome = "Vanessa", Idade = 20, QtdFilhos = 0
                    },
                    new Pessoa {
                        Nome = "Arthur", Idade = 29, QtdFilhos = 0
                    },
                    new Pessoa {
                        Nome = "Vinicius", Idade = 48, QtdFilhos = 3
                    },
                    new Pessoa {
                        Nome = "Cleide", Idade = 30, QtdFilhos = 1
                    },
                    new Pessoa {
                        Nome = "Carlos", Idade = 35, QtdFilhos = 2
                    },
                    new Pessoa {
                        Nome = "Luis", Idade = 54, QtdFilhos = 3
                    }
                };
                context.AddRange(pessoas);
                context.SaveChanges();
            }

            if (!context.Pets.Any())
            {
                var pets = new List <Pet>
                {
                    new Pet {
                        PessoaId = 1, Adotado = true
                    },
                    new Pet {
                        PessoaId = 1, Adotado = false
                    },
                    new Pet {
                        PessoaId = 1, Adotado = false
                    },
                    new Pet {
                        PessoaId = 2, Adotado = true
                    },
                    new Pet {
                        PessoaId = 3, Adotado = true
                    },
                    new Pet {
                        PessoaId = 3, Adotado = true
                    },
                    new Pet {
                        PessoaId = 4, Adotado = true
                    },
                    new Pet {
                        PessoaId = 4, Adotado = true
                    },
                    new Pet {
                        PessoaId = 4, Adotado = false
                    },
                    new Pet {
                        PessoaId = 4, Adotado = false
                    },
                    new Pet {
                        PessoaId = 6, Adotado = false
                    },
                    new Pet {
                        PessoaId = 6, Adotado = false
                    },
                    new Pet {
                        PessoaId = 7, Adotado = false
                    },
                    new Pet {
                        PessoaId = 7, Adotado = false
                    }
                };


                context.AddRange(pets);
                context.SaveChanges();
            }
            ;
        }