public async Task<Order> UpdateOrder(Order order) { // Update entity state _dbContext.ApplyChanges(order); try { await _dbContext.SaveChangesAsync(); } catch (DbUpdateConcurrencyException updateEx) { throw new FaultException(updateEx.Message); } // Load related entities, accept changes and return updated order await _dbContext.LoadRelatedEntitiesAsync(order); order.AcceptChanges(); return order; }
public async Task<Order> CreateOrder(Order order) { // Mark order as added order.TrackingState = TrackingState.Added; _dbContext.ApplyChanges(order); try { await _dbContext.SaveChangesAsync(); } catch (DbUpdateException updateEx) { throw new FaultException(updateEx.Message); } // Load related entities and accept changes await _dbContext.LoadRelatedEntitiesAsync(order); order.AcceptChanges(); return order; }