protected async override void ActivateSelected() { string action = SelectedCommodityOwner.Status == EntityStatus.Active ? "deactivate" : "activate"; if ( MessageBox.Show("Are you sure you want to " + action + " this commodity Owner?", "Agrimanagr: Activate Commodity Owner", MessageBoxButton.YesNo) == MessageBoxResult.No) return; using (var c = NestedContainer) { if (SelectedCommodityOwner.Status == EntityStatus.Active) { var commodityOwner = Using<ICommodityOwnerRepository>(c).GetById(SelectedCommodityOwner.Id); if (Using<IMasterDataUsage>(c).CommodityOwnerHasProducers(commodityOwner)) { MessageBox.Show( "Commodity Owner " + SelectedCommodityOwner.FirstName + " has Purchases in the system and thus cannot be deactivated.", "Agrimanagr: Deactivate Commodity Owner", MessageBoxButton.OK, MessageBoxImage.Exclamation); } } ResponseBool response = new ResponseBool() { Success = false }; if (SelectedCommodityOwner == null) return; _proxy = Using<IDistributorServiceProxy>(c); response = await _proxy.CommodityOwnerActivateOrDeactivateAsync(SelectedCommodityOwner.Id); MessageBox.Show(response.ErrorInfo, "Agrimangr: Manage Commodity Owner", MessageBoxButton.OK, MessageBoxImage.Information); } }