Exemplo n.º 1
0
 public Pizza FindByName(string name)
 {
     using (var pizzaContext = _pizzaContextProvider.Provide())
     {
         return(pizzaContext.Pizzas
                .Include(p => p.Ingredients)
                .Include(p => p.Ingredients.Select(i => i.Ingredient))
                .SingleOrDefault(i => i.Name == name));
     }
 }
Exemplo n.º 2
0
        public Order Order(IEnumerable <Pizza> pizzas)
        {
            using (var pizzaContext = _pizzaContextProvider.Provide())
            {
                var order = new Order
                {
                    Pizzas    = new List <PizzaOrder>(),
                    TimeStamp = DateTimeOffset.Now
                };

                foreach (var p in pizzas)
                {
                    order.Pizzas.Add(new PizzaOrder
                    {
                        Pizza = p
                    });
                }

                pizzaContext.Orders.Add(order);
                pizzaContext.SaveChanges();

                return(order);
            }
        }
Exemplo n.º 3
0
        static void Seed(IPizzaContextProvider pizzaContextProvider)
        {
            using (var pizzaContext = pizzaContextProvider.Provide())
            {
                var tomatoSauce = new Ingredient {
                    Id = 1, Name = "Tomato sauce"
                };
                var mozzarella = new Ingredient {
                    Id = 2, Name = "Mozzarella"
                };
                var pineapple = new Ingredient {
                    Id = 3, Name = "Pineapple"
                };
                var chicken = new Ingredient {
                    Id = 4, Name = "Chicken"
                };
                var salami = new Ingredient {
                    Id = 5, Name = "Salami"
                };

                pizzaContext.Ingredients.AddOrUpdate(
                    tomatoSauce,
                    mozzarella,
                    pineapple,
                    chicken,
                    salami
                    );

                var hawai = new Pizza
                {
                    Id          = 1,
                    Name        = "Hawaii",
                    Ingredients = new List <PizzaIngredient>
                    {
                        new PizzaIngredient {
                            Ingredient = tomatoSauce
                        },
                        new PizzaIngredient {
                            Ingredient = mozzarella
                        },
                        new PizzaIngredient {
                            Ingredient = chicken
                        },
                        new PizzaIngredient {
                            Ingredient = pineapple
                        },
                    }
                };

                var pepperoni = new Pizza
                {
                    Id          = 2,
                    Name        = "Pepperoni",
                    Ingredients = new List <PizzaIngredient>
                    {
                        new PizzaIngredient {
                            Ingredient = tomatoSauce
                        },
                        new PizzaIngredient {
                            Ingredient = mozzarella
                        },
                        new PizzaIngredient {
                            Ingredient = salami
                        },
                    }
                };

                var margherita = new Pizza
                {
                    Id          = 3,
                    Name        = "Margherita",
                    Ingredients = new List <PizzaIngredient>
                    {
                        new PizzaIngredient {
                            Ingredient = tomatoSauce
                        },
                        new PizzaIngredient {
                            Ingredient = mozzarella
                        },
                    }
                };

                pizzaContext.Pizzas.AddOrUpdate(hawai, pepperoni, margherita);

                pizzaContext.SaveChanges();
            }
        }