前回使用Autofac 套件,這回搭配 Microsoft.Extensions.Hosting 套件一起服用,透過Hosting 來掌控
應用程式相關生命週期及統一託管模型
首先安裝Microsoft.Extensions.Hosting
建立HostedService Class 並且繼承IHostedService 介面
內容中必須實作StartAsync()、StopAsync() 方法,在建構式中有注入 ServiceLifetimeReporter 實體,
另外,StartAsync() 有呼叫 reporter 的ReportServiceLifetimeDetails() 方法先知道下即可
Programes.cs
這邊會是透過Host 建立相關 container 的設定並且註冊相關類別,其中必須 using 相關命名空間
using Autofac;
using Autofac.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
執行結果
至於使用 Hosting 有甚麼差異?
統一託管模型與生命週期管理
生命週期事件控制
依賴注入容器(DI Container)為內建的,但也可以搭配第三方套件,如 Autofac
日誌和監控可使用內建提供的來存取,如Microsoft.Extensions.Logging 和其他監控工具
【參考】
沒有留言:
張貼留言