這段時間剛好協助處裡朋友公司一些新的Web API小專案,
由於是Windows base 加上 Docker的環境也並未準備好.
又不想掛載在IIS上,光架設想起來就很麻煩,
所以變成Windows Service到是很方便的選擇.
在官網的說明中,其實相單簡單
在Program.cs 中的IHostBuilder加入
UseWindowsService()
但實際上出現了小問題 冏...
ASP.NET Core 3+ IHostBuilder 本身並沒有提供UseWindowsService這個方法.
需安裝額外的 Extension
ASP.NET Core 3+ IHostBuilder
Microsoft.Extensions.Hosting.WindowsServices
ASP.NET Core 2.2 IWebHostBuilder
Microsoft.AspNetCore.Hosting.WindowsServices
裝完之後就成功找到了
用Administrator開啟CMD,binpath指向你建置出來的執行程式位置,建立服務,並指定port:6600
sc create Apiservice binpath= "C:\ApiService\NetCore3_WindowsServiceSample.exe --urls http://localhost:6600"
刪除服務指令
sc delete Apiservice
測試一下是否有如實回覆
就這樣很單純簡單的部屬在Windows Service上嚕~~
範例程式碼連結:請點我
參考連結: