29

このチュートリアルを使用して、非常に単純な Quartz.net 実装を実装しようとしました

using Quartz;
using Quartz.Impl;

// construct a scheduler factory
ISchedulerFactory schedFact = new StdSchedulerFactory();

// get a scheduler
IScheduler sched = schedFact.GetScheduler();
sched.Start();

// construct job info
JobDetail jobDetail = new JobDetail("myJob", null, typeof(HelloJob));
// fire every hour
Trigger trigger = TriggerUtils.MakeHourlyTrigger();
// start on the next even hour
trigger.StartTimeUtc = TriggerUtils.GetEvenHourDate(DateTime.UtcNow);  
trigger.Name = "myTrigger";
sched.ScheduleJob(jobDetail, trigger);

私が直面している問題は、(たとえば) MakeHourlyTriggerIntellisense では利用できず、エラーが表示されることです

Quartz.TriggerUtils には「MakeHourlyTrigger」の定義が含まれていません。

次のようなタイプでエラーが発生しますJobDetail

「型または名前空間名 'JobDetail' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか?)」

多分私は疲れていて、愚かで簡単なことを見逃しているのかもしれません... そうであることを願っています. 私がインターネットで見たすべての例は、Quartz を使用し、Quartz.Impl を使用する必要があると述べています。簡単なものが欠けているだけだと教えてください...

4

3 に答える 3

33

ドキュメントは1.0APIを対象としています。シズは今変わった:(そしてそうです、彼らは芸術を破ります。

だから..助けるために..この公式の移行ページをチェックしてください。Uはそこにいくつかの愛を見つけるかもしれません。

于 2012-06-04T06:04:33.687 に答える
11

ここが適切な場所ではないことはわかっています。元の Wiki 何とか何とか編集する必要があります。金曜日までに、夕方に 31 時間働くようにしています。だからここに行きます。

レッスン1

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Quartz;
using Quartz.Impl;

namespace QuartzNetTest
{
    class Program
    {
        static void Main(string[] args)
        {
            // construct a scheduler factory
            ISchedulerFactory schedFact = new StdSchedulerFactory();

            // get a scheduler
            IScheduler sched = schedFact.GetScheduler();
            sched.Start();

            // construct job info
            IJobDetail jobDetail = JobBuilder.Create<HelloJob>()
                .WithIdentity("myJob")
                .Build();
            ITrigger trigger = TriggerBuilder.Create()
                .WithIdentity("myTrigger")
                // fire every hour
                .WithSimpleSchedule(x => x.WithIntervalInHours(1).RepeatForever())
                // start on the next even hour
                .StartAt(DateBuilder.FutureDate(1, IntervalUnit.Hour))
                .Build();

            sched.ScheduleJob(jobDetail, trigger);
        }
    }

    class HelloJob : Quartz.IJob
    {
        public void Execute(IJobExecutionContext context)
        {
            Debug.WriteLine("Hello at " + DateTime.Now.ToString());
        }
    }

}
于 2013-10-02T02:40:40.570 に答える
3

Quartz.NET の Web サイトが GitHub Pages に正常に移行されたことをお知らせします。コミュニティに貢献する修正と機能強化がより簡単になるはずです。

チュートリアルは (最終的に) 2.x の変更を含むように更新されました。

http://www.quartz-scheduler.net/documentation/quartz-2.x/tutorial/index.html

サイトは Markdown で書かれており、GitHub 経由のプル リクエストで更新できます。

https://github.com/quartznet/quartznet/tree/gh-pages

于 2014-01-07T19:22:30.847 に答える