一、 使用VS建立
開啟Visual Studio,建立新專案,找到Worker Service模板。
二、專案結構說明
建立出來的專案,包含兩個主要檔案:
1)其中Program.cs檔案是應用的啟動“載入程式”;
2)另外一個檔案是worker.cs檔案,在這個檔案中,可以編寫自己的服務邏輯。
三、將應用轉換成Window服務
當前專案可在linux下完美執行,但是還不能以服務的方式在windows上安裝執行。
1. 引入Microsoft.Extensions.Hosting.WindowsServices
為了將應用轉換成Windows服務,我們需要使用如下命令引入一個包。
2.修改程式碼
需要修改Program.cs檔案,新增UseWindowsService()方法的呼叫。
四、釋出
使用VS釋出
五、使用SC命令在Windows上安裝服務
(SC的使用方法見上一篇)
六、具體測試
預設情況下,windows服務將把日誌寫入應用程式事件日誌,我們可以使用事件檢視器工具檢視這些日誌。另外,預設情況下,windows服務只會將嚴重級別為警告及以上的日誌寫入事件日誌。
所以,如果我們沒看到相關的日誌,我們可以在appsettings檔案中新增如下配置:
本機測試結果如下:
每隔1S記錄如下內容:
正如我們Worker程式碼那邊寫的: