protected async override void ActivateSelected() { string action = SelectedCommoditySupplier.Status == EntityStatus.Active ? "deactivate" : "activate"; if ( MessageBox.Show("Are you sure you want to " + action + " this commodity Supplier?", "Agrimanagr: Activate Commodity Supplier", MessageBoxButton.YesNo) == MessageBoxResult.No) return; using (var c = NestedContainer) { if (SelectedCommoditySupplier.Status == EntityStatus.Active) { var commoditySupplier =Using<ICommoditySupplierRepository>(c).GetById(SelectedCommoditySupplier.SupplierId) as CommoditySupplier; if (Using<IMasterDataUsage>(c).CommoditySupplierHasOwnersOrProducers(commoditySupplier)) { MessageBox.Show( "Commodity Supplier " + SelectedCommoditySupplier.Name + " has Owners and Producers in the system and thus cannot be deactivated.", "Agrimanagr: Deactivate Commodity Supplier", MessageBoxButton.OK, MessageBoxImage.Exclamation); } } ResponseBool response = new ResponseBool() { Success = false }; if (SelectedCommoditySupplier == null) return; _proxy = Using<IDistributorServiceProxy>(c); response = await _proxy.CommoditySupplierActivateOrDeactivateAsync(SelectedCommoditySupplier.SupplierId); MessageBox.Show(response.ErrorInfo, "Agrimangr: Manage Commodity Owner", MessageBoxButton.OK, MessageBoxImage.Information); } }