hangfire是執行背景任務的利器,具體請看官網介紹:https://www.hangfire.io/
建立一個asp.net core mvc 項目
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL0ITNzcDN3YzMtUjNwcTNyMzNxkjMxEzNxAjMtgDM5YjN18CXxEzNxAjMvwFOwkjN2UzLcd2bsJ2Lc12bj5ycn9Gbi52YucTMwIzcldWYtl2Lc9CX6MHc0RHaiojIsJye.png)
引入nuget包 Hangfire.AspNetCore
hangfire的任務需要資料庫持久化,我們在Startup類中修改ConfigureServices
然後在Configure方法中啟用hangfire中間件
現在我們運作一下項目,可以看到,資料庫裡自動生成了很多表,這些表就是用來持久化任務的
我們打開如下位址,可以看到hangfire的作業控制台,現在開沒有任何作業
在Configure方法中添加一個周期性作業,每分鐘執行一次輸出
再次啟動應用程式
輸出作業已經有了。
再次修改代碼,假設現在有2個任務,發送跟接收消息,那麼寫一個接口IMessage,Message實作該接口
在starup中注冊,
然後在Configure方法中使用
再次啟動程式
新增的2個作業都有了。
以上隻是hangfire在asp.net core中的簡單使用。