public static void SaveActivity(CustomerEDSC.ActivityDTRow ActivityDetailDR, CustomerEDSC.ActivityContactDetailDTRow contactDetailsDR, CustomerEDSC.ActivityGroupingDTRow ActGroupingDR, CustomerEDSC.ActivityScheduleDTDataTable ActScheduleDT) { CustomerDAC dac = new CustomerDAC(); using (TransactionScope trans = new TransactionScope()) { int activityID; dac.CreateActivities(ActivityDetailDR, out activityID); //Activity was Created, update all foreign key contactDetailsDR.ActivityID = activityID; ActGroupingDR.ActivityID = activityID; //CreateContactDetails dac.CreateActivityContactDetail(contactDetailsDR); //Create Schedule foreach (var ActScheduleDR in ActScheduleDT) { ActScheduleDR.ActivityID = activityID; dac.CreateActivitySchedule(ActScheduleDR); } //Create Grouping dac.CreateActivityGrouping(ActGroupingDR); trans.Complete(); } }