了解使用 Razor Pages 的時機和原因
在本單元中,您將了解針對 ASP.NET Core 應用程式使用 Razor Pages 的時機和原因。
Razor Pages 的優點
Razor Pages 是以網頁為中心的伺服器端程式設計模型,可使用 ASP.NET Core 來建置 Web UI。 這些權益包括:
- 使用 HTML、CSS 和 C# 輕鬆設定動態 Web 應用程式。
- 依功能組織檔案,以便維護。
- 使用 Razor 語法,結合標記與伺服器端 C# 程式碼。
Razor Pages 利用 Razor,將以伺服器為基礎的程式碼內嵌至網頁。 Razor 語法結合了 HTML 和 C# 來定義動態轉譯邏輯。 這表示您可以在執行階段使用 HTML 標記內的 C# 變數和方法,在伺服器上產生動態 Web 內容。 請務必瞭解 Razor Pages 不是 HTML、CSS 或 JavaScript 的替代項目,而是結合這些技術來建立動態 Web 內容。
關注點分離
Razor Pages 會使用 C# PageModel
類別強制區分重要事項、封裝其 Razor 頁面範圍內的資料屬性和邏輯作業,以及定義 HTTP 要求的頁面處理常式。 PageModel
類別是由 ASP.NET Core 專案範本自動產生的部分類別。 PageModel
類別位於 Pages
資料夾中,並以 Razor 頁面命名。 例如,Index.cshtml
Razor 頁面的 PageModel
類別名為 IndexModel.cs
。
使用 Razor Pages 的時機
當您符合下列情況時,請在 ASP.NET Core 應用程式中使用 Razor Pages:
- 想要產生動態 Web UI。
- 偏好以頁面為主的方法。
- 想要減少重複的部分檢視。
Razor Pages 將相關頁面及其邏輯一起保留在自己的命名空間和目錄中,以簡化 ASP.NET Core 頁面組織方式。
注意
ASP.NET Core 也支援用於建置 Web 應用程式的 Model-View-Controller (MVC) 模式。 若您偏好清楚區分模型、檢視和控制器,請使用 MVC。 Razor Pages 和 MVC 可共存於相同的應用程式中。 MVC 在此課程模組範圍之外。
在下一個單元中,您將進行 Razor Pages 應用程式的導覽。