我在ASP.NET MVC 4中編寫了一個簡單的應用程序。我已經研究過我的問題,但沒有任何結果。連續檢查時間
我需要的是基本的東西。我在數據庫中收到了有截止日期的事件。截止日期結束後,如何讓申請標記爲已完成?我想,應用程序應該始終檢查每個截止日期,當時間與截止日期匹配時,它會更改事件的狀態。
我不是要求一個解決方案或任何東西,只是點頭,我應該去哪個方向或我應該看看。
我在ASP.NET MVC 4中編寫了一個簡單的應用程序。我已經研究過我的問題,但沒有任何結果。連續檢查時間
我需要的是基本的東西。我在數據庫中收到了有截止日期的事件。截止日期結束後,如何讓申請標記爲已完成?我想,應用程序應該始終檢查每個截止日期,當時間與截止日期匹配時,它會更改事件的狀態。
我不是要求一個解決方案或任何東西,只是點頭,我應該去哪個方向或我應該看看。
有幾個解決方案:
1)如果你有機會到所在的服務器應用程序託管 - 您可以創建Windows服務,將檢查事件的狀態
2)您可以創建MVC計時器作業 - 檢查了這一點:ASP .NET MVC - Should I run a background timer
3)我不確定,因爲我不是SQL Pro - 但我相信它可以在數據庫端做到這一點。
謝謝,這正是我一直在尋找的! – faso
@ArthurFromLatvia#3最有意義。 #1有用處,但似乎在這裏矯枉過正。和#2 ......不應該這樣做......這是#1的目的。 – MikeSmithDev
@MikeSmithDev感謝您的澄清! – faso
另一種方法是在您從數據庫中讀取數據時生成狀態。例如。例如:
SELECT
...
CASE WHEN GETUTCDATE() < DeadLineUtc AND Status = "ACTIVE" THEN "EXPIRED"
ELSE Status
END AS Status
...
FROM ...
爲什麼你甚至需要更改事件狀態?截止日期*是*狀態/標準。從你列出的內容來看,沒有太多理由需要檢查狀態,而不是僅僅檢查截止日期。如果你仍然需要地位,那可能是其他的事情。所以也許有時你需要檢查狀態和截止日期。 – MikeSmithDev
是的,我需要許多其他的東西的地位。我只是將我的問題簡化爲最低限度的信息 – faso