public OrdersResponse addOrder(int idCustomer, AddOrderRequest req) { if (!context.Customers.Any(c => c.IdCustomer == idCustomer)) { return new OrdersResponse { orders = null, Error = "No customer with such id" } } ; foreach (ConfectioneryDTO con in req.Confectionery) { if (!context.Confectioneries.Any(c => c.Name == con.Name)) { return new OrdersResponse { orders = null, Error = "no such confectionery as " + con.Name } } ; } Order newOrder = new Order { DateAccepted = req.DateAccepted, DateFinished = DateTime.Now, Notes = req.Notes, IdEmployee = 1, IdCustomer = idCustomer }; context.Add <Order>(newOrder); context.SaveChanges(); foreach (ConfectioneryDTO con in req.Confectionery) { Confectionery_Order newC_Order = new Confectionery_Order { IdOrder = context.Orders.Max(o => o.IdOrder), IdConfectionery = context.Confectioneries.Where(c => c.Name == con.Name).First().IdConfectionery, Quantity = con.Quantity, Notes = con.Notes }; context.Add <Confectionery_Order>(newC_Order); context.SaveChanges(); } return(getOrders(null)); } } }