public override void Execute() { Guard.ArgumentNotNull(_visit.AdmissionID, "_visit.AdmissionID"); var broker = new BrokerService(); var v = broker.FindVisit(_visit.AdmissionID); if (v != null) { broker.UpdateVisit(_visit.AdmissionID, _visit); } else { //because of legacy behavior some visit records might have been left orphaned, we need to delete first broker.DeleteThenAddVisit(_visit); } }