无法在Quartz.NET中加载作业程序集错误

时间:2011-06-29 10:36:45

标签: quartz.net

我正在使用Quartz.NET调度程序作为独立的Windows服务,而从ASP.NET应用程序中我安排了作业。我有一个单独的工作组件,我收到以下错误

无法加载文件或程序集“AV.Scheduler.Jobs,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null”或其依赖项之一。系统找不到指定的文件。

这是我的代码,

        JobDetail jobDetail = new JobDetail("testJob", null, typeof(TestJob));

        //created trigger which will fire every minute starting immediately
        SimpleTrigger trigger = new SimpleTrigger("testTrigger",
                                null,
                                DateTime.UtcNow,
                                null,
                                1,
                                TimeSpan.FromMinutes(1));

        scheduler.ScheduleJob(jobDetail, trigger);

我在最后一行收到错误。

1 个答案:

答案 0 :(得分:6)

虽然已经回答(在评论中),但我在这里添加了一个答案供将来参考。

为了让Quartz服务执行您的自定义作业,它需要能够以某种方式找到作业程序集。正如您所建议的那样,一种解决方案是将其添加为启动和停止Quartz服务的控制台应用程序的引用。但是,控制台应用程序并不总是存在。如果是这种情况,则需要将作业程序集放在Quartz.dll所在的文件夹中(服务使用的dll版本)。

Quartz.Net的优秀资源是http://jvilalta.blogspot.com/。以下博客文章特别关注此主题: