c# - 在 Quartz.NET 中获取触发器属性

标签 c# quartz.net

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

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

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

最佳答案

怎么样

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...
}

关于c# - 在 Quartz.NET 中获取触发器属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3995304/

相关文章:

c# - 当某些代码位于方法中时,Quartz.NET 不触发

c# - Quartz.net 为 ITrigger 设置时区?

c# - 使用 Unschedulejob 修改触发器详细信息 - 我做错了什么? ( quartz 网)

c# - 如何读取 SignalR 中的多值 cookie?

c# - MongoDB 文本搜索,在 C# 中进行排序

installation - 尝试安装 Quartz.net,运行服务器时出现问题

c# - 获取 Quartz.NET 中的所有触发器

c# - 从联系人全名中删除头衔

c# - 我如何组合 Expression<Func<MyClass,bool>>[]?

c# - 不可见的 Gridview 列获取 0 值