如何在Quartz.NET中获取所有预定作业和触发器的详细信息c#

Bri*_*rij 7 c# quartz-scheduler quartz.net

我必须创建所有预定作业和触发器的管理页面.如何在Quartz.NET中获取运行作业和触发器的详细信息?我可以暂停/停止或更新工作吗?有没有示例代码?

Cla*_*ton 13

以下是使用StdSchedulerFactory进行操作的方法

ISchedulerFactory schedFact = new StdSchedulerFactory();
foreach (IScheduler scheduler in schedFact.AllSchedulers)
{
    var scheduler1 = scheduler;
    foreach (var jobDetail in from jobGroupName in scheduler1.JobGroupNames
                              from jobName in scheduler1.GetJobNames(jobGroupName)
                              select scheduler1.GetJobDetail(jobName, jobGroupName))
    {
         //Get props about job from jobDetail
    }

    foreach (var triggerDetail in from triggerGroupName in scheduler1.TriggerGroupNames
                                  from triggerName in scheduler1.GetTriggerNames(triggerGroupName)
                                  select scheduler1.GetTrigger(triggerName, triggerGroupName))
    {
         //Get props about trigger from triggerDetail
    }
}
Run Code Online (Sandbox Code Playgroud)


Jet*_*hro 10

这是一个开放的项目,就是这样做的.项目应该包含您创建自己所需的所有代码,或者您可以只使用开源项目.

Quartz.net的基于Web的管理页面

  1. 允许注册现有的Quartz.net安装
  2. 允许查看作业和触发器
  3. 允许安排作业,包括编辑JobDataMaps
  4. 允许查看日历
  5. 允许查看触发器触发时间
  6. 基于Silverlight的时间线显示即将到来的时间表