public void RegisterDirty(T obj) { if (!NewList.Contains(obj) && !RemovedList.Contains(obj)) { DirtyList.Add(obj); } // Console.WriteLine("Updating: " + obj.ToBsonDocument()[0]);\ }
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); if (propertyName != null && propertyName.Equals("DupDirtyList")) { return; } if (DirtyList == null) { DirtyList = new List <string>(); } if (DirtyList.SingleOrDefault(x => x == propertyName) == null) { DirtyList.Add(propertyName); } }
void add_new_so_analysis(SceneObject so, AnalysisViz analysis) { lock (SOToAnalysis) { List <AnalysisViz> l; if (SOToAnalysis.TryGetValue(so, out l) == false) { l = new List <AnalysisViz>(); SOToAnalysis[so] = l; } l.Add(analysis); } analysis.OnComputeUpdateRequired += OnVisualizationRequestedUpdate; analysis.OnGeometryUpdateRequired += OnVisualizationHasGeometryUpdate; lock (DirtyList) { DirtyList.Add(analysis); processThreadEvent.Set(); } }
public void SaveResource(bool bNew, DataSet dataSet) { DataSet dsReturn = new DataSet(); DataSet ds = new DataSet(); if (bNew) { ds = dataSet; } else { if (IsDirty) { if (this.DirtyList.Count > 0) { if (DirtyList.ContainsKey(RBAC_RESOURCE_FIELDS.FIELD_RESOURCE_CODE)) { DirtyItem dItem = new DirtyItem(); dItem.FieldOriginalValue = ""; dItem.FieldNewValue = _resourceGroupKey; DirtyList.Add(RBAC_RESOURCE_FIELDS.FIELD_RESOURCE_GROUP_KEY, dItem); } DataTable resourceTable = DataTableHelper.CreateDataTableForUpdateBasicData(RBAC_RESOURCE_FIELDS.DATABASE_TABLE_NAME); foreach (string Key in DirtyList.Keys) { Dictionary <string, string> rowData = new Dictionary <string, string>() { { COMMON_FIELDS.FIELD_COMMON_UPDATE_KEY, _resourceKey }, { COMMON_FIELDS.FIELD_COMMON_UPDATE_NAME, Key }, { COMMON_FIELDS.FIELD_COMMON_UPDATE_OLD_VALUE, this.DirtyList[Key].FieldOriginalValue }, { COMMON_FIELDS.FIELD_COMMON_UPDATE_NEW_VALUE, this.DirtyList[Key].FieldNewValue } }; FanHai.Hemera.Utils.Common.Utils.AddRowDataToDataTable(ref resourceTable, rowData); } if (resourceTable.Rows.Count > 0) { ds.Tables.Add(resourceTable); } } } } try { IServerObjFactory serverFactory = CallRemotingService.GetRemoteObject(); if (null != serverFactory) { if (bNew) { dsReturn = serverFactory.CreateIResourceEngine().AddResource(ds); } else { dsReturn = serverFactory.CreateIResourceEngine().UpdateResource(ds); } _errorMsg = FanHai.Hemera.Share.Common.ReturnMessageUtils.GetServerReturnMessage(dsReturn); } } catch (Exception ex) { _errorMsg = ex.Message; } finally { CallRemotingService.UnregisterChannel(); } }