public bool AddOrMergeJson(string key, string payload, bool saveToRepository = false) { var newJsonDataModel = CreateJsonDataModelBridge(payload); if (newJsonDataModel == null) { return(false); } JsonDataModelBridge currentJsonDataModel = null; if (_jsonDataModel.TryGetDynamicChild(key, out DynamicChild <DataModel> child)) { currentJsonDataModel = new JsonDataModelBridge(_savedJsonDynamicDataSetting.Value[key]); currentJsonDataModel.Merge(newJsonDataModel); child.Value = currentJsonDataModel.DataModel; } else { _jsonDataModel.AddDynamicChild(key, newJsonDataModel.DataModel); } if (saveToRepository) { SaveToRepository(key, currentJsonDataModel != null ? currentJsonDataModel.JObject.ToString() : newJsonDataModel.JObject.ToString()); } return(true); }
public void Merge(JsonDataModelBridge jsonDataModel) { JObject.Merge(jsonDataModel.JObject); DataModel = GetJsonDataModel(JObject); }