Understanding ASP.NET Core 3.x
這是看線上教學 課程的筆記 加上 自己的解釋或疑惑
Exploring the Project Structure of ASP.NET Core 3
asp.net core 程式開始點
Program.cs => Main => CreateHostBuilder 會用 Startup
( 就是變成console專案?! )
Startup.cs => ConfigureServices 負責 DI
services.AddRazorPages(); => 有這行 才能用 Razor Pages
services.AddControllers(); => 有這行 才能用 API
services.AddControllersWithViews();=> 有這行 才能用 MVC
services.AddScoped<IRestaurantData, SqlRestaurantData>(); => 自訂的介面 跟 物件
註冊有三個方式:DI 生命週期
AddTransient =>每次注入時,都new一個實體 EX 建構子注入 是一個實體 , 再用HttpContext.RequestServices.GetService<IRestaurantData>() 會再NEW一個實體
AddScoped => 每個 Request 有一個實體
AddSingleton => Singleton模式 程式執行後 只會有一個實體
參考 筆記 - 不可不知的 ASP.NET Core 依賴注入 , ASP.NET Core 教學 - Dependency Injection
Startup.cs => Configure負責 Middleware ( Pipeline )
先後順序會影響Pipeline 處理的順序 EX : app.UseStaticFiles(); 表示可以讀到wwwroot 的靜態檔案
Working with Packages and Libraries
套件 => Server 用 Nuget , Client 用 NPM
Bundler & Minifier 要安裝擴充套件 參考 [食譜好菜] BundleConfig 在 ASP.NET Core 還存在嗎?
Understanding ASP.NET Core 3 MVC
asp.ner core 的MVC 跟MVC5 大致上差不多 多了View 也可以DI注入
@inject 參考ASP.NET Core 教學 - Dependency Injection
asp.ner core 的 Pazor Pages 參考
Hello, Razor Pages! - 重溫 WebForm 的簡約風格
Blazor and SignalR
SKIP
Setting up a Web API
API目前應該跟MVC5 使用上沒有大改 ( MVC5是分開 現在又再一起了 )
gRPC SKIP
Developing Applications Across Frameworks and Operating Systems
core 產生出來的檔案 app.dll 跟app.exe 的差異 在於exe包含CLI 所以檔案會大很多
Deploying ASP.NET Core 3 Applications
SKIP
如果內容有誤請多鞭策謝謝