public static void Run(DataContext _context) { try { var rand = new Random(); var listShoes = _context.Shoes.Include(c => c.ShoesImages).Include(c => c.Stocks); foreach (var shoes in listShoes) { for (var i = 0; i < 4; i++) { var image = new ShoesImage() { ImagePath = _ShoesImages[rand.Next(0, _ShoesImages.Count() - 1)], ColorId = 1 }; shoes.ShoesImages.Add(image); } var sizeId = rand.Next(4, 12); var quantity = rand.Next(20, 88); shoes.Stocks.Add(new Stock() { SizeId = sizeId, Instock = quantity, ShoesId = shoes.Id, ColorId = 1 }); shoes.Stocks.Add(new Stock() { SizeId = sizeId == 12 ? sizeId - 1 : sizeId + 1, Instock = quantity, ShoesId = shoes.Id, ColorId = 1 }); } _context.SaveChanges(); } catch (Exception e) { Console.WriteLine(e); Console.WriteLine("error"); } Console.WriteLine("Done"); }
public async Task <IActionResult> AddShoesForAdmin([FromBody] BodyCreateShoes model) { // Validate if (!model.IsValid()) { return(Ok(ResponseDTO.BadRequest("Not enough information to create."))); } if (await isExist(model.Code)) { return(Ok(ResponseDTO.BadRequest("Shoes's code is already existed"))); } var images = model.Images; Console.WriteLine(model.Images.Count); var shoesImages = new List <ShoesImage>(); foreach (var image in images) { var shoesImage = new ShoesImage { ColorId = image.ColorId, ImagePath = image.ImagePath, }; shoesImages.Add(shoesImage); } var stocks = new List <Stock>(); foreach (var item in model.Stocks) { var s = new Stock { ColorId = item.ColorId, SizeId = item.SizeId, Instock = item.Instock, }; stocks.Add(s); } var shoes = new Shoes() { Code = model.Code, Name = model.Name, Description = model.Description, Rating = model.Rating, Price = model.Price, IsNew = model.IsNew, IsOnSale = model.IsOnSale, StyleId = model.StyleId, BrandId = model.BrandId, GenderId = model.GenderId, ShoesImages = shoesImages, Stocks = stocks }; if (shoes.IsNew) { shoes.IsNew = true; } return(await this._AddItem(shoes)); }