在對ASP.NET Core管道中關于依賴注入的兩個核心對象(ServiceCollection和ServiceProvider)有了足夠的認識之后,我們將關注的目光轉移到編程層面。在ASP.NET Core應用中基于依賴注入的編程主要涉及到兩個方面,它們分別是將服務注冊到ServiceCollection中,和采用注入的方式利用ServiceProvider提供我們所需的服務。我們先來討論ASP.NET Core應用中如何進行服務注冊。[本文已經(jīng)同步到《ASP.NET Core框架揭秘》之中]

目錄
一、服務注冊
    系統(tǒng)自動注冊的服務
    手工注冊的服務
二、以注入的形式提取服務
    啟動類型的構造函數(shù)和Configure方法種注入服務
    中間件類型的構造函數(shù)和Invoke方法中注入服務
    Controller類型的構造函數(shù)中注入服務
    View中注入服務
三、與第三方DI框架的整合

一、服務注冊

就注冊的主體來劃分,ASP.NET Core應用中注冊的服務大體可以分為兩種類型,一種是WebHostBuilder在創(chuàng)建WebHost之前自動注冊的服務,這些服務確保了后續(xù)管道能夠順利構建并能提供基本的請求處理能力。另一種則是用戶根據(jù)自身的需要注冊的,如果系統(tǒng)自動注冊的服務不符合我們的需求,我們也可以注冊自己的服務來覆蓋它。

系統(tǒng)自動注冊的服務

那么系統(tǒng)在構建ASP.NET Core管道的時候到底自行注

網(wǎng)友評論