這系列主要針對 asp.net 3.1 的使用經驗以及測試歷程紀錄下來,將之前概略的筆記
整理一下並產出文章,未來也方便自己查找(回想)。
首先建立空專案,先選ASP.NET Core Web 應用程式
成功建立後,方案總管檔案結構
這時按F5,跑看看
或使用postman 檢視
以上為建立專案後最初的狀況。
接著說明程式執行流程
由方案總管可以看到 Program.cs 與 Startup.cs 兩個類別檔,程式會由 Program.cs 的 Main
函式為進入點,如下圖。
其中 Main 裡面會呼叫 CreateHostBuilder 函式,這邊主要是建立WebHost,
使用 Host.CreateDefaultBuilder 方式,並且設定 ConfigureWebHostBuilder方法
傳入 callback 為 UseStartup<Startup>() 方法,最後會是Run 方法。
接著來看 Startup 類別
裡面有兩個方法 ConfigureServices、Configure,其中呼叫的順序如圖上標示,為了確認以下加入文字顯示
按F5執行,並調整輸出視窗的來源為目前「專案」
回頭來說明這兩個方法中,各自負責的職責是甚麼
ConfigureServices(IServiceCollection services) 方法:
這個方法中可以加入相關 service 到Container中(關於容器的使用後續文章再說明,亦可參考官方說明),
方法上方也有提供連結文中有更詳細的說明
Configure(IApplicationBuilder app, IWebHostEnvironment env) 方法:
這個方法中可以設定HTTP Request Pipeline ,而程式碼中的 app.UseDeveloperExceptionPage()、app.UseRouting()、app.UseEndpoints() 便是在組裝 Middleware,亦可加入自訂Middleware,
(關於Middleware 的說明,後續文章再說明,亦可參考官方說明)。這邊檢視app.UseRouting() 內容
如下圖
若追進方法內容,例如 app.UseRouting 可以看出最後呼叫RoutingMiddleware。
簡單說明,在Configure 方法可以設定 Http Request 及Response Pipeline 的Middleware 元件。
網站參數設定檔:
之前設定都是透過 Web.config 而在ASP.NET Core 則是使用 appsettings.json ,其中若是開發的話應
使用 appsettings.Development.json,後續會再針對不同環境如何置換對應的設定檔詳細介紹。
專案參數設定檔:
透過 launchSettings.json 檔案設定,如下圖所示
亦可透過專案屬性頁設定,如下圖。
以上是對於 asp.net core 專案的初步認識,知道了程式流程及一些設定意義
沒有留言:
張貼留言