我有一個視圖模型有以下幾點:發出值只有當某些條件得到滿足,否則發出另一個vlaue
enum Detection {NotTriggered, Triggered};
public Detection AlertState => _alertState.Value;
public DateTimeOffset? LastAlertTime => _lastAlertTime.Value;
我想怎麼辦有另一個屬性:int AcknowledgementPriority {get;}
默認情況下返回0
。不過,如果AlertState
變成Triggered
,並且LastAlertTime
有效時間,我想要一個計時器。該計時器在30秒後將AcknowledgementPriority
設置爲1
。如果AlertState
在任何時間點變爲NotTriggered
,則AcknowledgementPriority
將再次變爲0
。
我很確定我可以使用像Observable.From(1).Delay(Timespan.FromSeconds(30))
這樣的「計時器」部分,但我正在努力與Rx的方式做到這一點。
謝謝。