public void Persist(VehicleEvent ev)
        {
            VehicleEventDto dto = VehicleEventAssembler.FromDomainObjectToDto(ev);

            service.SubmitVehicleEventCompleted += OnChangesSubmitted;
            service.SubmitVehicleEventAsync(dto);
        }
        public void Delete(VehicleEvent ev)
        {
            VehicleEventDto dto = VehicleEventAssembler.FromDomainObjectToDto(ev);

            service.DeleteVehicleEventCompleted += OnRemoved;
            service.DeleteVehicleEventAsync(dto);
        }
 private void OnEventsLoaded(object s,
                             GetVehicleEventsCompletedEventArgs op)
 {
     service.GetVehicleEventsCompleted -= OnEventsLoaded;
     if (op.Error != null)
     {
         errorCallback.Invoke(op.Error, op.Error.Message);
     }
     else
     {
         List <VehicleEvent> result = new List <VehicleEvent>();
         foreach (VehicleEventDto eventEntity in op.Result)
         {
             result.Add(VehicleEventAssembler.FromDtoToDomainObject(eventEntity));
         }
         eventsRetrievedDelegate.Invoke(result);
     }
 }