1

私のアプリには、Alarm午前 8:00 に開始する予定の があります ( BeginTime)。私が直面している問題は、更新する最も適切な方法がわからないことですBeginTime

で を見つけて、そこから更新しようとしAlarmましScheduledActionServiceた。残念ながら、それは機能していないようで、Alarm決してトリガーされません。

        var schedule = ScheduledActionService.Find(alarmModel.Name);

        if (schedule != null)
        {
            var alarm = (Alarm)schedule;

            if (alarm.BeginTime != alarmModel.BeginTime)
            {
                alarm.BeginTime = alarmModel.BeginTime;
            }
        }

から削除してからScheduledActionService新しいものを追加すると、うまくいきました。

しかし、これは醜く見えます...これが私が「更新」できる唯一の方法ですかAlarm???!

ありがとう、

シン

4

1 に答える 1

2

いいえ。正しい方法は、Replace()を呼び出すことです。

   var schedule = ScheduledActionService.Find(alarmModel.Name);

    if (schedule != null)
    {
        var alarm = (Alarm)schedule;

        if (alarm.BeginTime != alarmModel.BeginTime)
        {
            alarm.BeginTime = alarmModel.BeginTime;
            ScheduledActionService.Replace(alarm);
        }
    }
于 2012-05-11T06:36:13.387 に答える