private void RunChildPatch(DataAccessor <DMSource> accessor, DMSource model) { if (model.PatchClientID != null || model.PatchType != null) { var patchData = PatchTools.GetPatchData(model); if (patchData.PatchType == PatchTypeEnum.CREATE) { accessor.CreateObject(model); } else if (patchData.PatchType == PatchTypeEnum.UPDATE) { accessor.UpdateObject(model); } else if (patchData.PatchType == PatchTypeEnum.DELETE) { accessor.DeleteObject(model.ID); } } accessor.DATA_MAP.ConnectionTypes.ForEach(connectionType => { foreach (IDataModel connectionModel in accessor.DATA_MAP.ConnectionValue(connectionType, model)) { if (connectionModel.PatchType != null) { ExicuteNextChain(PatchTypeEnum.GetType(connectionModel.PatchType), accessor, connectionType, model, connectionModel); } } }); }
private void RunChildAdd(DataAccessor <DMSource> accessor, DMSource model) { accessor.CreateObject(model); accessor.DATA_MAP.ConnectionTypes.ForEach(connectionType => { foreach (IDataModel connectionModel in accessor.DATA_MAP.ConnectionValue(connectionType, model)) { if (connectionModel.PatchType != null) { ExicuteNextChain(PatchTypeEnum.GetType(connectionModel.PatchType), accessor, connectionType, model, connectionModel); } } }); }