2

Quart.NET ( http://quartznet.sourceforge.net/ ) を使用してジョブをスケジュールしています。これは完全に機能します。プログラムで作成ジョブとトリガーを実行できますが、データベースを使用して新しいトリガーを保存および作成したいと考えています。

Quartz.configの変更されたファイルは次のとおりです。

Quartz.jobStore.type = Quartz.Impl.AdoJobStore.JobStoreTX、Quartz Quartz.jobStore.driverDelegateType = Quartz.Impl.AdoJobStore.OracleDelegate、Quartz Quartz.jobStore.tablePrefix = QRTZ_ Quartz.jobStore.dataSource = myDS Quartz.dataSource.myDS. connectionString = * my oracle 接続文字列* *** Quartz.dataSource.myDS.provider = OracleODP-20 Quartz.jobStore.useProperties = true

Quartz.NET の最新の安定バージョンは 2.0.1 と呼ばれるQuartz.Server.2010のソリューション サンプルを使用しています。プロジェクトは正常に再生され、テーブル a でSELECTが 15 秒ごとに実行されます (多かれ少なかれ) が、データを挿入する方法クォーツテーブルで?

私のデータベースは、スクリプトtables_oracle.sqlを使用して構成されています

データベースのスキーマクォーツは非常に難しいため、テーブルでINSERTを手動で実行することはありません。

新しいジョブをスケジュールするために使用する別のプロジェクト WEB があります。このプロジェクトはテーブルにデータを挿入し、プロジェクト サーバー Quartz.Server.2010 が実行されます。

メソッド CronExpression を使用して、1 分ごとにジョブをスケジュールできますか? 以下のように:

Quartz.CronExpression cron = new Quartz.CronExpression("0 0/1 * 1/1 * ? *");

しかし、私はそれをデータベースに入れて、クォーツサーバーで消費し、私の Web プロジェクトでは実行したくありません。

友よありがとう、

4

1 に答える 1

3

Quartz サーバーと同じ設定を使用するように Web サーバーを構成し、同じ方法でスケジューラーを初期化しますが、実際にはスケジューラーを開始しません (そうしないと、Web サーバーでジョブの実行が開始されます)。

API を使用してジョブを作成するときは、忘れずに .StoreDurably() を呼び出すようにしてください。

構文の詳細については、この SO の質問に対する私の回答を参照してください。

于 2012-09-21T17:29:49.270 に答える