1

在我的应用程序中,我有一个Alarm计划在上午 8:00 ( BeginTime) 开始。我面临的问题是我不确定更新其BeginTime.

我试图在其中找到AlarmScheduledActionService然后从那里更新它。不幸的是,它似乎不起作用,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 回答