private void SeedMockData() { using var context = new OrderDbContext(ContextOptions); context.Database.EnsureDeleted(); context.Database.Migrate(); var order1 = new Order() { OrderDate = new DateTime(2020, 11, 20), Status = OrderStatus.Delivered, UserId = "11223344-5566-7788-99AA-BBCCDDEEFF00", Email = "*****@*****.**", FirstName = "Marie", LastName = "Dahlmalm", Address = "Årstaängsvägen 9", ZipCode = "12345", City = "Stockholm", Country = "Sweden", Phone = "555123456", ShippingNotes = "", OrderProducts = new List <OrderProduct>() { new OrderProduct() { Name = "Kladdkaka", Quantity = 11, Price = 11.99M, OrderId = 2000 }, new OrderProduct() { Name = "Cheesecake", Quantity = 2, Price = 29M, OrderId = 2000 } } }; var order2 = new Order { UserId = "d514be83-bebb-4fe7-b905-e8db158a9ffd" }; context.AddRange(order1, order2); context.SaveChanges(); }
public async Task <Order> UpdateOrderAsync(Order order) { if (_orderDbContext.Orders.Any(item => item.Id == order.Id)) { var items = _orderDbContext.OrderItems.Where(o => o.OrderId == order.Id); _orderDbContext.OrderItems.RemoveRange(items); foreach (var item in order.OrderItems) { item.OrderId = order.Id; item.Id = Guid.NewGuid().ToString(); } _orderDbContext.AddRange(order.OrderItems); var entity = _orderDbContext.Orders.Update(order).Entity; await _orderDbContext.SaveChangesAsync(); return(entity); } return(order); }