- ASP.NET Core 教程
- ASP.NET Core - 首頁
- ASP.NET Core - 概述
- ASP.NET Core - 環境設定
- ASP.NET Core - 新建專案
- ASP.NET Core - 專案佈局
- ASP.NET Core - project.json
- ASP.NET Core - 配置
- ASP.NET Core - 中介軟體
- ASP.NET Core - 異常處理
- ASP.NET Core - 靜態檔案
- ASP.NET Core - 設定 MVC
- ASP.NET Core - MVC 設計模式
- ASP.NET Core - 路由
- ASP.NET Core - 屬性路由
- ASP.NET Core - Action 結果
- ASP.NET Core - 檢視
- 設定 Entity Framework
- ASP.NET Core - DbContext
- ASP.NET Core - Razor 佈局檢視
- ASP.NET Core - Razor 檢視啟動
- ASP.NET Core - Razor 檢視匯入
- ASP.NET Core - Razor 標籤助手
- ASP.NET Core - Razor 編輯表單
- ASP.NET Core - 身份驗證概述
- ASP.NET Core - Authorize 屬性
- 身份驗證配置
- ASP.NET Core - 身份遷移
- ASP.NET Core - 使用者註冊
- ASP.NET Core - 建立使用者
- ASP.NET Core - 登入和登出
- ASP.NET Core 有用資源
- ASP.NET Core - 快速指南
- ASP.NET Core - 有用資源
- ASP.NET Core - 討論
ASP.NET Core - MVC 設計模式
MVC(模型-檢視-控制器)設計模式是一種已經存在了幾十年的設計模式,它已被用於許多不同的技術,從 Smalltalk 到 C++、Java,現在又在 C# 和 .NET 中作為構建使用者介面時的設計模式。
MVC 設計模式是軟體應用程式使用者介面層的一種流行設計模式。
在較大的應用程式中,您通常會將模型-檢視-控制器 UI 層與應用程式中的其他設計模式結合起來,例如資料訪問模式和訊息傳遞模式。
所有這些將共同構建完整的應用程式堆疊。
MVC 將應用程式的使用者介面 (UI) 分為以下三個部分:
模型 - 一組描述您正在處理的資料以及業務邏輯的類。
檢視 - 定義應用程式的 UI 將如何顯示。它是一個純 HTML,決定 UI 的外觀。
控制器 - 一組處理來自使用者的通訊、整體應用程式流程和特定於應用程式的邏輯的類。
MVC 的理念
現在讓我們瞭解 MVC 背後的理念。
其理念是,您將擁有一個名為檢視的元件,它完全負責呈現此使用者介面,無論它應該是 HTML 還是實際上應該是桌面應用程式上的 UI 小部件。
檢視與模型對話,該模型包含檢視需要顯示的所有資料。
在 Web 應用程式中,檢視可能根本沒有任何與之關聯的程式碼。
它可能只有 HTML,然後是一些表示式,說明從模型中獲取資料片段並將它們插入到您在檢視中構建的 HTML 模板中的正確位置。
控制器組織所有內容。當 HTTP 請求到達 MVC 應用程式時,請求會被路由到控制器,然後由控制器與資料庫、檔案系統或模型對話。
在 MVC 中,控制器接收 HTTP 請求,控制器必須弄清楚如何將資訊組合在一起以響應此請求。也許使用者正在將瀏覽器定向到應用程式的 /books URL。因此,控制器需要將資訊組合在一起以顯示書籍列表。在這種情況下,控制器將構建一個模型。
模型不知道任何關於 HTTP 請求或控制器的知識。
模型只負責儲存使用者想要檢視的書籍資訊以及與該書籍列表相關的任何邏輯。
模型只是我們可以使用的另一個 C# 類,如果您有一個複雜的模型,您可能有多個類。
一旦模型組合在一起,控制器就可以選擇一個檢視來呈現模型。
檢視將使用模型中的資訊(例如所有書籍和每本書的標題等),並使用這些資訊來構建一個 HTML 頁面。
然後,該 HTML 將在 HTTP 響應中傳送回客戶端,並且整個 HTTP 請求和響應事務完成。
這些是 MVC 設計模式的基礎知識,這種模式背後的理念是保持關注點的分離。因此,控制器只負責獲取請求並構建模型。模型承載我們需要放入檢視中的邏輯和資料。然後,檢視只負責將該模型轉換為 HTML。