
1:ASP.NET CORE 的應(yīng)用程序的入口
2:可以放在項(xiàng)目的任何地方
3:即使不被定義為Publish也是可以被強(qiáng)制加載的
4:當(dāng)存在多個(gè)Startup類時(shí),按照根目錄,字母排序選擇
5:通過依賴注入的形式配置
6:包含Configuration(必須),ConfigureServices(可選)
------------------------------------------------------包含方法--------------------------------------------------
Configure方法(必須)
用來指定應(yīng)用程序如何響應(yīng)一個(gè)HTTP請(qǐng)求,方可以通過依賴注入的形式來封裝一些中間件(middleware)來輔助處理請(qǐng)求。該方法必須包含參數(shù)IApplicationBuilder,其他參數(shù)可以通過需要選擇是否需要配置。如果新建一個(gè)默認(rèn)的mvc項(xiàng)目,系統(tǒng)則默認(rèn)也帶上 IHostingEnvironment 與 ILoggerFactory
ConfigureServices(可選)
主要用來配置應(yīng)用程序內(nèi)部的一些服務(wù),比如:配置,郵件,短信等之類的東西,此方法配置一些東西需要在Configure之前調(diào)用,Configure管道中用到的一些擴(kuò)展需要依賴自ConfigureServices。
---------------------------------------------------------包含對(duì)象-----------------------------------------------
ASP.NET CORE提供了一些服務(wù)對(duì)象可供使用,使用時(shí)只需要在Startup構(gòu)造函數(shù),Configure方法與ConfigureServices方法包含一個(gè)合適的接口即可。提供的服務(wù)對(duì)象如下:
IApplicationBuilder
被用來構(gòu)建應(yīng)用程序的請(qǐng)求管道,只可以在Configure中使用
IApplicationEnvironment
提供訪問應(yīng)用程序的屬性,類似ApplicationName,ApplicationVersion以及ApplicationBasePath。可以在Startup的構(gòu)造函數(shù)和Configure中使用
IHostingEnvironment
提供當(dāng)前的EnvironmentName,WebRootPath以及Web根目錄提供者,可以在Startup與Configure方法中使用
ILoggerFactory
日志,通常放到Configure中配置
---------------------------------------------------------匯總整理-----------------------------------------------
Startup類請(qǐng)求順序:
Constructor-ConfigureServices-Configure
每個(gè)方法可選參數(shù):
Constructor:IApplicationEnvironment,IHostingEnvironment,ILoggerFactory
ConfigureServices:IServiceCollcetion
Configure:IApplicationBuilder,IApplicationEnvironment,IHostingEnvironment,ILoggerFactory
注:ILoggerFactory
---------------------------------------------------------寫在最后-----------------------------------------------
統(tǒng)一化的配置整合,讓消息管道配置更簡(jiǎn)單整潔,通過依賴注入的形式可以更好的擴(kuò)展及使用這些管道功能