4

我需要能够在 C# 中获取触发器的属性(即 cron 表达式或简单触发器的类型(每日、每小时等)及其参数),并显示它们并让它们进行修改。我现在有这个:

Trigger[] trigger = sched.GetTriggersOfJob(id, groupid);

但我找不到任何方法让我访问这些信息。有任何想法吗?

4

1 回答 1

6

怎么样

Trigger[] triggers = sched.GetTriggersOfJob(id, groupid);
foreach (SimpleTrigger simpleTrigger in triggers.OfType<SimpleTrigger>())
{
   //extract simple trigger info
}

foreach (CronTrigger cronTrigger in triggers.OfType<CronTrigger>())
{
  //extract cron trigger info
}

如果效率很重要,您也可以在一个循环中执行此操作:

Trigger[] triggers = sched.GetTriggersOfJob(id, groupid);
foreach (var trigger in triggers)
{
   SimpleTrigger simpleTrigger = trigger as SimpleTrigger;
   if (simpleTrigger != null)
   {
     //handle simple trigger
     continue;
   }
   //same for CronTrigger...
}
于 2010-10-22T09:41:32.347 回答