Esempio n. 1
0
 internal static void SeedData(StoreContext context)
 {
     try
     {
         if (!context.Categories.Any())
         {
             context.Categories.AddRange(SampleData.GetCategories());
             context.SaveChanges();
         }
         if (!context.Customers.Any())
         {
             var prod1 = context.Categories.Include(c => c.Products)
                         .FirstOrDefault()?.Products.Skip(3).FirstOrDefault();
             var prod2 = context.Categories.Skip(2).Include(c => c.Products)
                         .FirstOrDefault()?.Products.Skip(2).FirstOrDefault();
             var prod3 = context.Categories.Skip(5).Include(c => c.Products)
                         .FirstOrDefault()?.Products.Skip(1).FirstOrDefault();
             var prod4 = context.Categories.Skip(2).Include(c => c.Products).FirstOrDefault()?
                         .Products.Skip(1).FirstOrDefault();
             context.Customers
             .AddRange(SampleData.GetAllCustomerRecords(
                           new List <Product> {
                 prod1, prod2, prod3, prod4
             }));
             context.SaveChanges();
         }
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex);
     }
 }
        internal static void SeedData(StoreContext context)
        {
            try
            {
                var cust = new Customer()
                {
                    EmailAddress = "*****@*****.**",
                    Password     = "******",
                    FullName     = "Super Spy",
                };
                if (!context.Customers.Any())
                {
                    context.Customers.Add(cust);
                    context.SaveChanges();
                }
                if (!context.Categories.Any())
                {
                    foreach (var itm in SampleData.GetCategories())
                    {
                        context.Categories.Add(itm.Cat);
                        context.SaveChanges();
                        itm.Cat.Products.AddRange(itm.Products);
                        context.SaveChanges();
                    }
                    //context.Categories.AddRange();
                    //context.SaveChanges();
                }

                if (!context.Customers.Any())
                {
                    var prod1 = context.Categories
                                .Include(c => c.Products).FirstOrDefault()?
                                .Products.Skip(3).FirstOrDefault();
                    var prod2 = context.Categories.Skip(2)
                                .Include(c => c.Products).FirstOrDefault()?
                                .Products.Skip(2).FirstOrDefault();
                    var prod3 = context.Categories.Skip(5)
                                .Include(c => c.Products).FirstOrDefault()?
                                .Products.Skip(1).FirstOrDefault();
                    var prod4 = context.Categories.Skip(2)
                                .Include(c => c.Products).FirstOrDefault()?
                                .Products.Skip(1).FirstOrDefault();

                    context.Customers.Update(SampleData.GetAllCustomerRecords(cust,
                                                                              new List <Product> {
                        prod1, prod2, prod3, prod4
                    }));
                    context.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
                throw;
            }
        }