0

毎日午後11時に関数を呼び出して、すべてのユーザーの支払いを確認したいのですが、この関数を呼び出すにはどうすればよいですか?問題は、共有サーバーを使用していて、IIS 7も使用しているため、タスクスケジュールを使用できないことです。私のWebサイトは.NetおよびC#にあります。

4

5 に答える 5

2

これにはいくつかのツールがあります。Quartz.NETをチェックしてください。もう 1 つの解決策は、SQL Server でジョブをスケジュールすることです。それを使用している場合は、ジョブに何を実行させたいかによって異なります。

つまり、タスク スケジューラを実際に使用できないと仮定します。それ以外の場合は、かなり信頼性が高く、操作が簡単です。

于 2012-11-14T10:31:23.317 に答える
0

これを行うには、グローバル タイマーを使用するか、バックグラウンド スレッドを作成して、バックグラウンド スレッドのワーカー関数にタスク コードを配置します。

ただし、どちらも asp.net アプリケーションが生きている (シャットダウンされていない) ことに依存しています。

お役に立てれば。

于 2012-11-14T10:34:27.783 に答える
0

私が通常行うことは、カスタム スケジュールを作成することです。完了する必要があるタスクのリストをファイルまたはデータベースに書き込み、Timer を使用してタスクを実行し、完了したら完了としてマークします。

アルゴリズムは次のようなものです。

X 分ごと:

  1. 保留中のタスクのデータソースを確認してください。
  2. タスクを実行する
  3. 明日も同じタスクをスケジュールする
  4. タスクを完了としてマークします。
  5. 次のタスク。
于 2012-11-14T10:35:08.440 に答える
0

この機能を実行する安全な Web ページを構築し、自分の PC などの外部システムから呼び出します。

于 2012-11-14T10:36:29.707 に答える
0

Windows サービスを使用してこの問題を解決しました

于 2013-01-16T12:48:58.177 に答える