24 時間ごとに 1 回だけコードを実行する必要があります。
したがって、Global.asax ファイルに: 入れようとしましたApplication_Start
が、セッションが終了すると、コードが再度呼び出されます。静的変数を入れようとしましたが、同じ問題がありました。では、Web アプリで 24 時間に 1 回だけ実行するコードをどこに配置すればよいでしょうか?
24 時間ごとに 1 回だけコードを実行する必要があります。
したがって、Global.asax ファイルに: 入れようとしましたApplication_Start
が、セッションが終了すると、コードが再度呼び出されます。静的変数を入れようとしましたが、同じ問題がありました。では、Web アプリで 24 時間に 1 回だけ実行するコードをどこに配置すればよいでしょうか?
をホストする信頼できる方法はありませんrecurring background tasks in ASP.NET applications
。これを行う正しい方法は、Windows スケジューラを使用して定期的に実行するようにスケジュールされた Windows サービスまたはコンソール アプリケーションでコードをホストすることです。
これが Web アプリケーションである理由 これを 1 日 1 回実行したい場合、これは Windows サービスのような適切なアプリケーションに適しているのではないでしょうか?
Web アプリケーションを使用する必要がある場合は、最終実行日時を設定ファイルやデータベースなどのどこかに保存する必要があります。それが完了したら、スケジュールされたタスクを設定してサイトのリンクを毎日呼び出すことができます。これは機能するはずですが、別の外部サービスへの依存関係を追加してしまいます。