不能将类型 'System.Threading.tasks.task<Quartz.Scheduler> 隐式转换为 <Quartz.IScheduler>

Ele*_*nor 4 c# windows-services quartz

public void Start()
    {

        ISchedulerFactory schedFact = new  StdSchedulerFactory();

        IScheduler sched = schedFact.GetScheduler();
        sched.Start();

        IJobDetail job = JobBuilder.Create<EmailJob>()
            .Build();

        ITrigger trigger = TriggerBuilder.Create()
          .StartNow()
          .WithSimpleSchedule(x => x

              .WithIntervalInHours(48)
              .RepeatForever())
          .Build();

        sched.ScheduleJob(job, trigger);
    }
Run Code Online (Sandbox Code Playgroud)

我出错了 IScheduler sched = schedFact.GetScheduler();

它说

“不能将类型 System.Threading.tasks.task Quartz.Scheduler 隐式转换为 Quartz.IScheduler”

Ale*_*bov 9

schedFact.GetScheduler();返回Task您应该使用以下代码来获取IScheduler对象:

IScheduler sched = schedFact.GetScheduler().GetAwaiter().GetResult();
Run Code Online (Sandbox Code Playgroud)