xmlファイルのデータを使用してWebアプリケーションデータベースを更新する機能を作成しました。私はこのデータベースをいつも24時間後に更新したい。私の問題は、ボタンのクリックでトリガされる必要がなく、24時間ごとに実行されるように、このメソッドをコードでどこでどのように呼び出すべきかわかりません。 助けてください。Asp.Net Webアプリケーションデータベースの自動更新機能
答えて
ASP.NETのバックグラウンドタスクの問題の一部は、スレッドを開始するための標準アプリケーションが実行されていないことです。
webappでバックグラウンドタスクを開始すると、何かによってappdomainが失敗した場合、タスクが途中で停止することがあります。深刻な問題。
これを実装する最も柔軟な方法は、DBを更新するWindowsのスケジュールされたタスクで実行される別個のアプリケーションを使用することです。これは、タスクをWebアプリケーションから完全に分離しますが、維持するのが面倒かもしれません。 ただし、何らかの理由でwebappがオフラインになっても、その時点でタスクを実行しているサーバーが動作している限り、DBは更新されます。
webappにタスクを埋め込みたい場合は、ルールセットに従ってタスクを起動し、それを自分のデバイスに残すことができるので、cronに似たものが望ましいでしょう。
クォーツスケジューラはこれを達成することができますが、作業に手を出すことはできますが、単純な作業では時として過度の作業です。複雑なスケジュールで多くのタスクを実行し、cron式を使用できるようにする、より複雑なシステムの学習には価値があります。
HangFireは同じ問題の別の解決策であり、クォーツスケジューラよりやや簡単ですが、タスクのcron設定は引き続き可能です。
HangFireを使用すると、毎日真夜中にタスクが実行されます(UpdateDB
はアップデートを実行する方法です)。あなたのニーズに合わせて
RecurringJob.AddOrUpdate(() => UpdateDB(), "0 0 0 * * ?");
、HangFireはおそらく、この作業を取得する最も簡単な方法です。
以下はあなたにHangFireの概要を提供します:あなたはNuGetを使用して非常に迅速にそれを追加できるようにhttp://docs.hangfire.io/en/latest/quick-start.html
HangFireはNuGetアーカイブの中にあり、コンテキストメニューをパッケージ化し、タイミングタスクのドキュメントはこちらです:http://docs.hangfire.io/en/latest/background-methods/performing-recurrent-tasks.html
うまくいけば、これで十分です。
- 1. 自動更新asp.net Webサイトのbinフォルダ
- 2. 自動更新機能付きMVCパーシャルビュー
- 3. クロム拡張機能の自動更新機能をカスタマイズする
- 4. ASP.NET自動更新システム
- 5. asp.net mvcのWebページを自動的に更新する
- 6. Click Once Webアプリケーションの自動または自動更新
- 7. P2 Webリポジトリからの自動更新
- 8. Java Swingデスクトップの自動更新機能App
- 9. iPhone InApp購入自動更新が機能しない
- 10. フレックスモバイルアプリケーションに自動更新機能を追加する
- 11. プレイストアで自分のアプリケーションの自動更新機能を許可する方法
- 12. エラー:自動機能
- 13. CouchDBのフィルタ機能と更新機能?
- 14. Webアプリケーションデータベースの負荷軽減
- 15. Kohanaの自動モデラー更新機能でキー 'PRIMARY'の重複エントリ '2'
- 16. UILabelの自動スクロール機能
- 17. AWS Beanstalkドッカー画像の自動更新が機能しません
- 18. DataRowの更新時に、コントロールの自動更新はどのように機能しますか?
- 19. 自動更新ラジオチェック
- 20. 自動更新データバインディング
- 21. SVN自動更新
- 22. 自動更新アプリケーション
- 23. Asp.Net/Ajaxの更新パネルを自動的に更新する方法は?
- 24. レコードの更新機能
- 25. JavaScriptの更新機能
- 26. フレックスアプリケーションの自動更新
- 27. サービスの自動更新
- 28. backbone.jsの自動更新ビュー
- 29. Crystal Reportsの自動更新
- 30. MySQLのタイムスタンプ自動更新
データベースを更新するコードを独自のアプリケーションに配置し、特定の時刻に実行されるWindowsスケジュールされたタスクを作成する方法があります。ここを見てください - http://windows.microsoft.com/en-gb/windows/schedule-task#1TC=windows-7 – Alex
おかげでアレックス.....しかし、私は私がそれを持つことができる別のオプションです同じアプリケーション。 –
可能ですが、もう少し作業が必要になります。説明が長くなり過ぎているので、私はすぐに答えます。 – Alex