public OrderResponse Create(OrderAddRequest request) { using (var adapter = DataAccessAdapterFactory.NewDataAccessAdapter()) { OnBeforeOrderAddRequest(adapter, request); var entity = request.FromDto(); entity.IsNew = true; if (adapter.SaveEntity(entity, true)) { OnAfterOrderAddRequest(adapter, request); return(new OrderResponse(entity.ToDto())); } } throw new InvalidOperationException(); }