0

これはおそらく簡単な質問ですが、私は Quartz.NET を使用するのはかなり初めてですが、スケジュールの前にジョブまたはトリガーの名前をどのように変更しますか? 私は基本的に、サポート クラスでテンプレート ジョブを作成し、それをスケジューリングを処理するメイン プログラムで使用しています。

ジョブ/トリガーごとに一意の名前が必要なので、基本的には、スケジュールのためにメイン プログラムにコピーするときに、"SomeJob" から "SomeJob01" のようなテンプレート ジョブの名前を使用するつもりでした。

これは簡単なことのように思えますが、検索すると、スケジュールされた後にジョブの詳細を変更できないと言っている人しか見つかりません。これは、名前を変更してスケジュールできるようにすることです。

4

1 に答える 1

0

Quartz では、ジョブはそのスケジューリング トリガーとは別のものです。複数のトリガーを使用して同じジョブを追加できます。

あなたがその仕事で何をしているのか完全にはわかりませんが、それを Quartz に追加するには、次のことができます。

private const string DEFAULT_GROUP = "MyDefaultGroup";

Trigger trigger = TriggerUtils.MakeHourlyTrigger();

JobDetail jobDetail = new JobDetail("YourUniqueJobName", DEFAULT_GROUP, typeof(YourJobClass));

// now add the job to Quartz
scheduler.ScheduleJob(jobDetail, trigger);

このようにして、一意の名前を持つ新しいジョブを追加してそれに新しいトリガーを割り当てるか、既存のジョブに新しいトリガーを割り当てることができます。

しかし、一般的に言って、Quartz で何かを変更するには、それを削除し、オブジェクトを変更してから、再度追加する必要があります。

ジョブ/トリガーの概要は次のとおりです: http://quartznet.sourceforge.net/tutorial/lesson_2.html

トリガーの仕組みについて詳しくは、http: //quartznet.sourceforge.net/tutorial/lesson_4.htmlをご覧ください。

ジョブの仕組みについて詳しくは、http: //quartznet.sourceforge.net/tutorial/lesson_3.htmlをご覧ください。

于 2012-12-06T01:38:47.613 に答える