[食譜好菜] ASP.NET Core MVC 新增Areas(區域) | Asp-area
在VisualStudio2019v16.4.5[1]的ASP.NETCoreMVC[2]專案上,按右鍵移到「加入」是看不到「區域」這個選項的。所以Areas(區域)得要自己手動加了,這邊就記錄一下手動新增Areas的步驟。新增Areas資料夾先在專案上按右鍵移到「加入」,點擊「新增資料夾」,建立名稱為Areas的資料夾。依照特定結構新增Area接下來,假定我要新增Admin這個Area,我就依照下面這個特定的結構把資料夾建起來。[ASP.NETCoreMVC專案] 或者,也可以在Areas資料夾上按右鍵,移到「加入」,選擇「區域」,輸入Area名稱後就會幫我們產生好資料夾。新增Con...
在 Visual Studio 2019 v16.4.5[1] 的 ASP.NET Core MVC[2] 專案上,按右鍵移到「加入」是看不到「區域」這個選項的。
所以 Areas(區域)得要自己手動加了,這邊就記錄一下手動新增 Areas 的步驟。
新增 Areas 資料夾先在專案上按右鍵移到「加入」,點擊「新增資料夾」,建立名稱為 Areas 的資料夾。
依照特定結構新增 Area接下來,假定我要新增 Admin 這個 Area,我就依照下面這個特定的結構把資料夾建起來。
[ASP.NET Core MVC 專案]或者,也可以在 Areas 資料夾上按右鍵,移到「加入」,選擇「區域」,輸入 Area 名稱後就會幫我們產生好資料夾。
新增 Controller在新增好的 Controllers 資料夾按右鍵移到「加入」,點擊「控制器」。
選擇自己想要的 Controller 類型後,就輸入 Controller 的名稱。
在 Controller 標記 AreaAttribute在剛剛新增的 Controller 上標記 AreaAttribute, 這個步驟相當重要,要讓 ASP.NET Core MVC 知道 Controller 是隸屬於哪一個 Area?
設定慣例路由建議一定要設定慣例路由[3],避免找不到沒有指定屬性路由[4]的 Action,在 Startup.cs 的 app.UseEndpoints() 裡面加入下面這段程式碼:
endpoints.MapControllerRoute( name: "areas", pattern: "{area:exists}/{contro...