問題
想要在 ABP Blazor Server 專案中客製 Login 頁面要怎麼做呢?
實作
ABP Blazor 登入是使用 Razor Page,
1.在 Blazor 專案的Pages目錄中,新增Account目錄,並新增Login.cshtml,如下,

請注意,是專案的Pages目錄,不是Components/Pages目錄哦~~
2.在Login.cshtml.cs中,修改 Model 名稱,並繼承自Volo.Abp.Account.Web.Pages.Account.LoginModel
並將預設的OnGet
Method 刪除掉,如下,
1 | public class CustomLoginModel : LoginModel |
3.Copy Abp Login.cshtml的內容到Login.cshtml中,並將@model
改成CustomLoginModel
,如下,
1 | @page |
4.在Pages目錄中,新增_ViewImports.cshtml
,並刪除ViewImports.cshtml.cs
檔案
在_ViewImports.cshtml
中加入 TagHelper 設定,
1 | @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers |
所以最後會新增Login.cshtml
及 _ViewImports.cshtml
,如下,

再運行系統來檢查一下,切到登入頁面來驗證是否有跑到我們的客製登入頁,

同時檢查一下,驗證看看 Razor Page 的 TagHelper 是否有正常運作,
Form 是否有包含__RequestVerificationToken
的 Hidden Field,
