protected override async void DeleteSelected() { if ( MessageBox.Show("Are you sure you want to delete this vehicle?", "Agrimanagr: Delete Vehicle", MessageBoxButton.OKCancel) == MessageBoxResult.Cancel) return; using (var c = NestedContainer) { if (Using<IMasterDataUsage>(c).CheckVehicleIsUsed(SelectedVehicle.Vehicle, EntityStatus.Deleted)) { MessageBox.Show( "Vehicle " + SelectedVehicle.Vehicle.Name + " has been used in a transaction. Delete dependencies to continue.", "Agrimanagr: Delete Vehicle", MessageBoxButton.OK, MessageBoxImage.Exclamation); return; } ResponseBool response = new ResponseBool() {Success = false}; if (SelectedVehicle == null) return; _proxy = Using<IDistributorServiceProxy>(c); response = await _proxy.VehicleDeleteAsync(SelectedVehicle.Vehicle.Id); if (response.Success) Using<IVehicleRepository>(c).SetAsDeleted(SelectedVehicle.Vehicle); MessageBox.Show(response.ErrorInfo, "Agrimangr: Manage Vehicles", MessageBoxButton.OK, MessageBoxImage.Information); } }