大家好,我是灰太狼的夢想。今天開始帶領大家一起學習ASP.NET Core 5.0最新的技術。當然我寫這篇博客的時候.NET 6預覽版已經出來了。但是我們還是先學習.NET5,因為這個是穩定的,可以用於生產環境。
微軟公司大家也知道,就這個尿性。技術出來很快。不過我們作為程序員,哪有停止不前的道理,程序員就是活到老,學到老的職業。所以為了我們能夠,跟上時代的步伐,從今天起,我開始帶領大家一起學習。微軟現在的眼光很獨到,踩准了雲時代的步伐,大數據時代,雲時代,我們擁抱開源,擁抱.net core.一定不會錯!
廢話說了一大堆,開始進入正題。這個系列,我主要根據微軟的官方文檔以及參考國外牛人的博客,經過自己的加工理解,記錄自己學習.NET Core的過程,如果寫的哪里有不對的,歡迎指正,如果覺得我寫的還不錯,也別吝嗇,給我點一個小紅心,謝謝。這篇主要介紹ASP.NET Core中的Startup類。
Startup類的作用就是:配置應用程序的服務,以及配置應用程序的請求管道。
一個ASP.NET Core應用程序,必須包含啟動類.默認情況下,啟動類的名字就是Startup,當然我們也可以改成任意名字,只要我們喜歡,不過根據約定大於配置原則,我們不推薦改名字,就直接默認框架幫我們建好的名字即可,也就是—Startup. 如圖,我們建了一個空白的ASP.NET Core應用程序。打開Startup類文件:
我們可以清楚的看到:Startup類包含兩個方法,一個ConfigureServices,一個Configure方法。
- ConfigureServices方法配置應用程序的服務,一個服務就是可以重復使用的組件,可以提供應用程序功能。服務是通過依賴注入的方式,或者ApplicationServices來注入到應用程序中使用的。
- Configure方法是用來創建應用程序的請求處理管道的。請求管道是通過給IApplicationBuilder實例(這里是app)配置中間件實現的。
- 可以看出Startup類中Configure是必須要有的,ConfigureServices方法是可選的,也就是有服務需要注入的時候,就要有,沒有服務注入的話,就可以不用ConfigureServices方法。
- 運行的時候ConfigureServices在Configure方法之前被調用。
這兩個方法,在應用程序啟動的時候就會被調用。
我們來看一下Program類:
在Program類中,我們可以清晰的看到啟動類Startup是通過調用主機的UserStartup<>泛型方法來配置使用的。這里的名字我們可以隨便改,不過不推薦改,就使用Startup就行。
題外篇,應用程序可以沒有Startup類,不過那樣的話,我們就需要把配置中間件和配置服務的代碼,寫在Program類的Main方法中了。此外,應用程序,針對不同的環境,比如生產環境,開發環境,可以有多個Startup類。這個屬於用到的少的,具體用到的時候,大家可以去看官網文檔。
到這里Startup類基本就講完了。感謝閱讀。