ASP.Net Core是一個自宿主的程序,里面含有Program類。BuildWebHost方式是程序最先開始執行的方法。類似於Main函數體
public static IWebHost BuildWebHost(string[] args) => WebHost.CreateDefaultBuilder(args) .UseStartup<Startup>() .Build();
IWebHost是通過IWebHostBuilder構建的。之后使用UseStartup來進入程序啟動階段。之后來到StartUp.cs類文件中,有兩個方法。IConfiguration和Configure
IConfiguration首先執行,該方法主要目的是通過IServiceConllection注入對象,Configura方法主要作用是處理中間件。
中間件Middleware 它通過IApplicationBuilder來調用,調用的方式有App.Run App.Use App.Map這三種方法使用。
中間件攜帶RequestDelegate委托,該委托包含HttpContext參數。所以中間件可以對請求進行操作,列如改變路由等操作,之后根據路由解析到相應頁面進行處理后,攜帶Response返回客戶端。
有張圖找不到了。。很形象的描述了Asp.NetCore的Http請求管道。個人覺得圖像才會讓人記憶深刻。等找到我在補上去。我覺得這些只不過淺顯的看懂表面上的東西,深層的東西還需要自己挖源碼阿~