2012-02-02 42 views
0

我正在創建一個用於出價的Web應用程序,它需要檢查用戶最後的出價時間,並確保如果在特定時間間隔內沒有其他出價,則該用戶應該獲勝,並且該入口被自動添加到數據庫。如何定期自動執行web服務?

爲了檢查時間,我需要創建一個以特定時間間隔運行的web服務,並檢查最後的出價時間,並在出價時間到期後執行工作。

+0

在頁面上使用一些javascript。它有一個允許隨機代碼以指定間隔執行的功能。 – 2012-02-02 05:34:18

+0

你可能還想在你的問題中拋出一個實際的*問題*。 – 2012-02-02 05:37:01

+0

你正在談論的內容聽起來更像是Windows任務調度程序或Windows服務的工作。它是否必須是Web服務?例如,檢查過程是否必須公開,以便遠程客戶端可以啓動它? – 2012-02-02 05:39:17

回答

0

您應該所有投標添加到數據庫來跟蹤用戶的多發。

要通知用戶,您可以設置一個Web服務,該服務需要用戶和拍賣參數,並返回一個小對象,其中包含有關拍賣信息的信息,包括有關最高報價(出價值,時間戳和可能用戶)的信息以及拍賣(狀態(開啓/關閉),贏家和最高出價等)。

如果是,可以說,距離最高出價15分鐘後,您關閉競標並宣佈獲勝者。該檢查可以在Web服務內完成。

然後使用Javascript頻繁地對服務進行AJAX請求,並根據返回的結果更新HTML/DOM。

0

你不能在窗體窗體上使用定時器控件,或者安排一個將在加載時調用web服務的exe。 所以你的exe/winforms將調用你的web服務的負載事件中的特定方法,並且你安排exe以特定的時間間隔運行。 +定時器,下文提到的

+1

這不是一個答案。這是一個缺少問號的問題。 – 2012-02-02 05:39:46

0

也許最好的選擇是自託管的WCF,它將允許您提供Web服務並運行一些後臺線程。

最簡單的選項看起來像一些類似命令,經常由Task Scheduler運行(每分鐘一次?)。

您也可以合併檢查出價和贏得一個網絡方法,所以每次用戶檢查拍賣狀態時,如果過期,您也將嘗試關閉它。然而,這是最差的dB訪問方案。

我更喜歡WCF +後臺線程+新出價隊列。