ASP.NET MVC 專案採用慣例優於配置,標準目錄結構如下,每個資料夾有明確職責。
| 資料夾 | 用途與規範 |
|---|---|
| App_Data | 儲存本地資料庫檔案、XML、存取權受保護的資料。同傳統 ASP.NET。 |
| Content | 建議存放靜態資源:CSS、JavaScript、圖片、字型等。非強制,可自行調整。 |
| Controllers | 建議放置所有 Controller 類別。命名慣例:{Name}Controller(如 HomeController)。 |
| Models | 建議放置領域模型、ViewModel、資料存取類別。最佳實務:獨立為類別庫專案。 |
| Views | 所有視圖檔案。規則:每個 Controller 對應一同名子目錄(Views/Home 對應 HomeController)。Views/Shared 存放共用視圖(母版頁、錯誤頁、部分視圖)。Controller 找不到專屬 View 時會自動 fallback 到 Shared。 |
Views/
├── Home/
│ ├── Index.aspx
│ ├── About.aspx
│ └── ...
├── Account/
│ ├── Login.aspx
│ └── Register.aspx
└── Shared/
├── Site.Master
├── Error.aspx
└── _Header.ascx
遵循標準目錄結構,能讓專案結構清晰、團隊協作順暢、框架自動發現機制正常運作。大型專案建議將 Models 獨立為核心類別庫。