コード例 #1
0
 public IActionResult Create([Bind("UserID,DeliveryName,DeliveryAddress")] Order order)
 {
     if (ModelState.IsValid)
     {
         order.DateCreated = DateTime.Now;
         _context.Order.Add(order);
         _context.SaveChanges();
         //add the orderlines to the database after creating the order
         Basket basket = Basket.GetBasket(_context);
         order.TotalPrice = basket.CreateOrderLines(order.OrderID);
         _context.SaveChanges();
         return(RedirectToAction("Details", new { id = order.OrderID }));
     }
     return(RedirectToAction("Review"));
 }
コード例 #2
0
ファイル: DbInitializer.cs プロジェクト: INSViraat/StoreBaby
        public static void SeedDb(BabyStoreContext context)
        {
            //context.Database.EnsureCreated();    because database is already created we just have to modify it

            // Look for any category.
            if (context.Category.Any())
            {
                return;   // DB has been seeded
            }

            var categories = new List <Category>
            {
                new Category {
                    Name = "Clothes"
                },
                new Category {
                    Name = "Play and Toys"
                },
                new Category {
                    Name = "Feeding"
                },
                new Category {
                    Name = "Medicine"
                },
                new Category {
                    Name = "Travel"
                },
                new Category {
                    Name = "Sleeping"
                }
            };

            foreach (Category c in categories)
            {
                context.Category.Add(c);
            }
            context.SaveChanges();

            var products = new List <Product>
            {
                new Product
                {
                    Name  = "Sleep Suit", Description = "For sleeping or general wear",
                    Price = 4.99M, CategoryID = categories.Single(c => c.Name == "Clothes").ID
                },
                new Product
                {
                    Name  = "Vest", Description = "For sleeping or general wear",
                    Price = 2.99M, CategoryID = categories.Single(c => c.Name == "Clothes").ID
                },
                new Product
                {
                    Name  = "Orange and Yellow Lion", Description = "Makes a squeaking noise",
                    Price = 1.99M, CategoryID = categories.Single(c => c.Name == "Play and Toys").ID
                },
                new Product
                {
                    Name       = "Blue Rabbit", Description = "Baby comforter", Price = 2.99M,
                    CategoryID = categories.Single(c => c.Name == "Play and Toys").ID
                },
                new Product
                {
                    Name  = "3 Pack of Bottles", Description = "For a leak free drink everytime",
                    Price = 24.99M, CategoryID = categories.Single(c => c.Name == "Feeding").ID
                },
                new Product
                {
                    Name  = "3 Pack of Bibs", Description = "Keep your baby dry when feeding",
                    Price = 8.99M, CategoryID = categories.Single(c => c.Name == "Feeding").ID
                },
                new Product
                {
                    Name  = "Powdered Baby Milk", Description = "Nutritional and Tasty",
                    Price = 9.99M, CategoryID = categories.Single(c => c.Name == "Feeding").ID
                },
                new Product
                {
                    Name  = "Pack of 70 Disposable Nappies", Description = "Dry and secure nappies with snug fit",
                    Price = 19.99M, CategoryID = categories.Single(c => c.Name == "Feeding").ID
                },
                new Product
                {
                    Name  = "Colic Medicine", Description = "For helping with baby colic pains",
                    Price = 4.99M, CategoryID = categories.Single(c => c.Name == "Medicine").ID
                },
                new Product
                {
                    Name  = "Reflux Medicine", Description = "Helps to prevent milk regurgitation and sickness",
                    Price = 4.99M, CategoryID = categories.Single(c => c.Name == "Medicine").ID
                },
                new Product
                {
                    Name  = "Black Pram and Pushchair System", Description = "Convert from pram to pushchair, with raincover",
                    Price = 299.99M, CategoryID = categories.Single(c => c.Name == "Travel").ID
                },
                new Product
                {
                    Name  = "Car Seat", Description = "For safe car travel",
                    Price = 49.99M, CategoryID = categories.Single(c => c.Name == "Travel").ID
                },
                new Product
                {
                    Name  = "Moses Basket", Description = "Plastic moses basket",
                    Price = 75.99M, CategoryID = categories.Single(c => c.Name == "Sleeping").ID
                },
                new Product
                {
                    Name  = "Crib", Description = "Wooden crib",
                    Price = 35.99M, CategoryID = categories.Single(c => c.Name == "Sleeping").ID
                }, new Product {
                    Name  = "Cot Bed", Description = "Converts from cot into bed for older children",
                    Price = 149.99M, CategoryID = categories.Single(c => c.Name == "Sleeping").ID
                },
                new Product
                {
                    Name  = "Circus Crib Bale", Description = "Contains sheet, duvet and bumper",
                    Price = 29.99M, CategoryID = categories.Single(c => c.Name == "Sleeping").ID
                },
                new Product
                {
                    Name  = "Loved Crib Bale", Description = "Contains sheet, duvet and bumper",
                    Price = 35.99M, CategoryID = categories.Single(c => c.Name == "Sleeping").ID
                }
            };

            foreach (var p in products)
            {
                context.Product.Add(p);
            }
            context.SaveChanges();

            var images = new List <ProductImage>
            {
                new ProductImage {
                    FileName = "SleepSuit1.JPG"
                },
                new ProductImage {
                    FileName = "SleepSuit2.JPG"
                },
                new ProductImage {
                    FileName = "Vest1.JPG"
                },
                new ProductImage {
                    FileName = "Vest2.JPG"
                },
                new ProductImage {
                    FileName = "Lion1.JPG"
                },
                new ProductImage {
                    FileName = "Rabbit1.JPG"
                },
                new ProductImage {
                    FileName = "Bottles1.JPG"
                },
                new ProductImage {
                    FileName = "Bottles2.JPG"
                },
                new ProductImage {
                    FileName = "Bottles3.JPG"
                },
                new ProductImage {
                    FileName = "Bibs1.JPG"
                },
                new ProductImage {
                    FileName = "Bibs2.JPG"
                },
                new ProductImage {
                    FileName = "Milk1.JPG"
                },
                new ProductImage {
                    FileName = "Nappies1.JPG"
                },
                new ProductImage {
                    FileName = "Nappies2.JPG"
                },
                new ProductImage {
                    FileName = "Nappies3.JPG"
                },
                new ProductImage {
                    FileName = "ColicMedicine1.JPG"
                },
                new ProductImage {
                    FileName = "Reflux1.JPG"
                },
                new ProductImage {
                    FileName = "Pram1.JPG"
                },
                new ProductImage {
                    FileName = "Pram2.JPG"
                },
                new ProductImage {
                    FileName = "Pram3.JPG"
                },
                new ProductImage {
                    FileName = "CarSeat1.JPG"
                },
                new ProductImage {
                    FileName = "CarSeat2.JPG"
                },
                new ProductImage {
                    FileName = "Moses1.JPG"
                },
                new ProductImage {
                    FileName = "Moses2.JPG"
                },
                new ProductImage {
                    FileName = "Crib1.JPG"
                },
                new ProductImage {
                    FileName = "Crib2.JPG"
                },
                new ProductImage {
                    FileName = "Bed1.JPG"
                },
                new ProductImage {
                    FileName = "Bed2.JPG"
                },
                new ProductImage {
                    FileName = "CircusBale1.JPG"
                },
                new ProductImage {
                    FileName = "CircusBale2.JPG"
                },
                new ProductImage {
                    FileName = "CircusBale3.JPG"
                },
                new ProductImage {
                    FileName = "LovedBale1.JPG"
                },
            };

            images.ForEach(c => context.ProductImage.Add(c));
            context.SaveChanges();

            var imageMappings = new List <ProductImageMapping>
            {
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "SleepSuit1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Sleep Suit").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "SleepSuit2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Sleep Suit").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Vest1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Vest").ID, ImageNumber = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Vest2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Vest").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Lion1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Orange and Yellow Lion").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Rabbit1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Blue Rabbit").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Bottles1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "3 Pack of Bottles").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Bottles2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "3 Pack of Bottles").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Bottles3.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "3 Pack of Bottles").ID,
                    ImageNumber    = 2
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Bibs1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "3 Pack of Bibs").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Bibs2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "3 Pack of Bibs").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Milk1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Powdered Baby Milk").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Nappies1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Pack of 70 Disposable Nappies").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Nappies2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Pack of 70 Disposable Nappies").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Nappies3.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Pack of 70 Disposable Nappies").ID,
                    ImageNumber    = 2
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "ColicMedicine1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Colic Medicine").ID, ImageNumber = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Reflux1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Reflux Medicine").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Pram1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Black Pram and Pushchair System").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Pram2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Black Pram and Pushchair System").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Pram3.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Black Pram and Pushchair System").ID,
                    ImageNumber    = 2
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "CarSeat1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Car Seat").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "CarSeat2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Car Seat").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Moses1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Moses Basket").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Moses2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Moses Basket").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Crib1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Crib").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Crib2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Crib").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Bed1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Cot Bed").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "Bed2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Cot Bed").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "CircusBale1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Circus Crib Bale").ID,
                    ImageNumber    = 0
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "CircusBale2.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Circus Crib Bale").ID,
                    ImageNumber    = 1
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "CircusBale3.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Circus Crib Bale").ID,
                    ImageNumber    = 2
                },
                new ProductImageMapping
                {
                    ProductImageID = images.Single(i => i.FileName == "LovedBale1.JPG").ID,
                    ProductID      = products.Single(c => c.Name == "Loved Crib Bale").ID,
                    ImageNumber    = 0
                },
            };

            imageMappings.ForEach(c => context.ProductImageMapping.Add(c));
            context.SaveChanges();

            var orders = new List <Order>
            {
                new Order
                {
                    DeliveryAddress = new Address {
                        AddressLine1 = "1 Some Street", Town = "Town1", County = "County", Postcode = "PostCode"
                    },
                    TotalPrice   = 4.99M,
                    UserID       = "*****@*****.**",
                    DateCreated  = new DateTime(2014, 1, 1),
                    DeliveryName = "Admin"
                },
                new Order
                {
                    DeliveryAddress = new Address {
                        AddressLine1 = "1 Some Street", Town = "Town1", County = "County", Postcode = "PostCode"
                    },
                    TotalPrice   = 2.99M,
                    UserID       = "*****@*****.**",
                    DateCreated  = new DateTime(2014, 1, 2),
                    DeliveryName = "Admin"
                },
                new Order
                {
                    DeliveryAddress = new Address {
                        AddressLine1 = "1 Some Street", Town = "Town1", County = "County", Postcode = "PostCode"
                    },
                    TotalPrice   = 1.99M,
                    UserID       = "*****@*****.**",
                    DateCreated  = new DateTime(2014, 1, 3),
                    DeliveryName = "Admin"
                },
                new Order
                {
                    DeliveryAddress = new Address {
                        AddressLine1 = "1 Some Street", Town = "Town1", County = "County", Postcode = "PostCode"
                    },
                    TotalPrice   = 24.99M,
                    UserID       = "*****@*****.**",
                    DateCreated  = new DateTime(2014, 1, 4),
                    DeliveryName = "Admin"
                },
                new Order
                {
                    DeliveryAddress = new Address {
                        AddressLine1 = "1 Some Street", Town = "Town1", County = "County", Postcode = "PostCode"
                    },
                    TotalPrice   = 8.99M,
                    UserID       = "*****@*****.**",
                    DateCreated  = new DateTime(2014, 1, 5),
                    DeliveryName = "Admin"
                }
            };

            orders.ForEach(c => context.Order.Add(c));
            context.SaveChanges();

            var orderLines = new List <OrderLine>
            {
                new OrderLine
                {
                    OrderID     = 1, ProductID = products.Single(c => c.Name == "Sleep Suit").ID,
                    ProductName = "Sleep Suit", Quantity = 1, UnitPrice = products.Single(c => c.Name == "Sleep Suit").Price
                },
                new OrderLine
                {
                    OrderID     = 2, ProductID = products.Single(c => c.Name == "Vest").ID,
                    ProductName = "Vest", Quantity = 1, UnitPrice = products.Single(c => c.Name == "Vest").Price
                },
                new OrderLine
                {
                    OrderID     = 3, ProductID = products.Single(c => c.Name == "Orange and Yellow Lion").ID,
                    ProductName = "Orange and Yellow Lion", Quantity = 1,
                    UnitPrice   = products.Single(c => c.Name == "Orange and Yellow Lion").Price
                },
                new OrderLine
                {
                    OrderID     = 4, ProductID = products.Single(c => c.Name == "3 Pack of Bottles").ID,
                    ProductName = "3 Pack of Bottles", Quantity = 1, UnitPrice = products.Single(c => c.Name == "3 Pack of Bottles").Price
                },
                new OrderLine
                {
                    OrderID     = 5, ProductID = products.Single(c => c.Name == "3 Pack of Bibs").ID,
                    ProductName = "3 Pack of Bibs", Quantity = 1, UnitPrice = products.Single(c => c.Name == "3 Pack of Bibs").Price
                }
            };

            orderLines.ForEach(c => context.OrderLine.Add(c));
            context.SaveChanges();
        }