我有一個asp.net mvc 2應用程序,我需要每天運行一次任務(調用WS,保存到數據庫)。這是什麼建議的方式?有一件事,我有一種感覺,我想從webapp中執行這個任務。asp.net mvc2任務調度器
有沒有人有任何建議: 我正在考慮.net石英或常規System.Timers.Timer? 有沒有人看到任何問題?
還有其他更好的解決方案嗎?
非常感謝 --MB
我有一個asp.net mvc 2應用程序,我需要每天運行一次任務(調用WS,保存到數據庫)。這是什麼建議的方式?有一件事,我有一種感覺,我想從webapp中執行這個任務。asp.net mvc2任務調度器
有沒有人有任何建議: 我正在考慮.net石英或常規System.Timers.Timer? 有沒有人看到任何問題?
還有其他更好的解決方案嗎?
非常感謝 --MB
爲什麼你想從Web應用程序跑的?你甚至無法知道webapp是否會在需要的時間運行。我建議你看看Windows Services
網絡應用程序不是計劃任務的最佳主機。除非你實施一個系統來保持過程清醒,否則沒有機會確保你的日程安排將被執行。 Quartz.net對此很有幫助。 它包含一個核心模塊,您可以在您的Web應用程序中使用該模塊來保存任務和執行預定作業的服務器(Windows服務)模塊。
我最近實現了我自己的Windows服務,並使用Sql Server作爲我的計劃任務的存儲。一切工作都很順利,即使我必須努力拼湊一些東西。 文件並不總是那麼清楚。
查看Quartz.Net,它可以作爲NuGet包或從their site獲得。
有很多關於如何設置這些例子,他們是非常靈活的,你只需要定義與單一Execute()
方法,得到由你選擇的觸發器的發射實現IJob
類。
您也可以考慮使用Windows Workflow Foundation。