private void startStatusTimer(StatusDTS statusDTS) { DateTime dtEnterToStatus = statusDTS.DateEntered; if (_tsTimersDict.ContainsKey(this.Status) && ((_curTimer == null) || (_curTimer.Enabled == false) || (_curTimer != _tsTimersDict[this.Status]) || (_curTimer.StartDT != _tsTimersDict[this.Status].StartDT)) ) { _curTimer = _tsTimersDict[this.Status]; _curTimer.Start(dtEnterToStatus); } }
// запуск таймера для обновленного состояния private void startStatusTimer(StatusDTS statusDTS) { DateTime dtEnterToStatus = statusDTS.DateEntered; // сохранить дату входа в состояние во внутреннем словаре _dtEnterStatusDict[this.Status] = dtEnterToStatus; if (_tsTimersDict.ContainsKey(this.Status) && ((_curTimer == null) || (_curTimer.Enabled == false) || (_curTimer != _tsTimersDict[this.Status]) || (_curTimer.StartDT != _tsTimersDict[this.Status].StartDT)) ) { _curTimer = _tsTimersDict[this.Status]; _curTimer.Start(dtEnterToStatus); } }