実装に焦点を当てたものではなく、コード固有のように見えるすべてのチュートリアルを読んだ後も、Quartz.NETに頭を悩ませようとしています。これが私がやろうとしていることです。ログテーブルのクエリ、他のプロセスへのデータの再送信など、さまざまなことを実行する20個のSQLストアドプロシージャがあります。これらのSPを1日中定期的に実行したいと考えています。したがって、Quartz.NETにとっては当然のように思えます。Quartz.NETを実装し、Quartzアセンブリと同じフォルダー内のアセンブリにジョブを含むWindowsSvcを作成する予定です。
これを実装するための悪い方法の1つは、SPごとに1つのジョブクラスを作成し、それぞれに個別のトリガーを関連付けることだと思います。ジョブクラスは、名前がクラスにハードコーディングされている特定のSPを実行するだけです。それは悪い方法です。
しかし、私の一生の間、私は良い方法が何であるかを理解することができません。明らかに、名前が単純なSQLテーブルから取得される一般的な「名前でSPを実行する」だけを実行する単一のジョブクラスを持つことは道のりのようですが、異なるSPに関連付けられた異なるトリガーを取得するにはどうすればよいですか? Quartzは、20個すべてのSPを別々のスレッドにロードすることを知っていますか?
そして、Quartzは、たとえばSPの1つに対して、変更されたトリガーをピックアップすることをどのように知るのでしょうか。それは、ジョブとトリガーをリロードするためのWin Svcの開始/停止サイクルである必要がありますか、それともある種の「リロード」を手動でコーディングする必要がありますか?
何かご意見は?クォーツとは何か誤解していますか?言い回しは、エンタープライズスケジューラ、システム、インストールするもののように聞こえます。OTOHのすべてのドキュメントでは、独自のスケジューラまたはスケジューリングシステムを作成するためにつなぎ合わせた一連のクラスのように見えます。たとえば、FTPを実行するアプリを作成するためにMSが.NETで提供するクラスと同じです。多分私はあまりにも多くを期待していますか?