網(wǎng)站首頁 編程語言 正文
區(qū)域(Area)是一個 ASP.NET MVC 功能,用于將相關功能組織為一個單獨的命名空間(用于路由)和文件結構(用于視圖)。使用區(qū)域通過向控制器和操作添加 一個路由參數(shù)(area)來創(chuàng)建用于路由目的的層次結構。
區(qū)域提供了一種將大型ASP.NET Core MVC Web 應用程序分割成更小功能分組的方法。一個區(qū)域?qū)嶋H上是應用程序內(nèi)的 MVC 結構。對于大型應用程序,將應用程序分成單獨的該機功能區(qū)域是有利的。例如,具有多個業(yè)務單位的電子商務應用的結賬,計費,搜索等。
在?ASP.NET Core MVC 項目中,一個區(qū)域可以定義為具有自己的一組控制器,視圖和模型的較小的功能單元。
下列情況可以考慮使用區(qū)域:
- 應用程序由多個高級功能組件組成,應在邏輯上分開。
- 想要劃分 MVC 項目,使每個功能區(qū)域可以單獨工作。
區(qū)域特點:
- ASP.NET Core MVC 應用程序可以有任意數(shù)量的區(qū)域。
- 每個區(qū)域都有自己的控制器,視圖和模型。
- 允許將大型 MVC 項目組織成可以獨立工作的多個高級組件。
- 支持具有相同名稱的多個控制器 —— 只要它們所在區(qū)域不同。
配置區(qū)域路由在?ASP.NET Core MVC 之路由(Routing)?中有介紹。區(qū)域視圖檢索路徑和正常視圖一致,默認的位置可以通過 Microsoft.AspNetCore.Mvc.Razor.RazorViewEngineOptions 的 AreaViewLocationFormats 方法被修改。
例如,下面代碼中的文件夾名為 Area,它將被修改為 Categories :
services.Configure<RazorViewEngineOptions>(options =>
{
options.AreaViewLocationFormats.Clear();
options.AreaViewLocationFormats.Add("/Categories/{2}/Views/{1}/{0}.cshtml");
options.AreaViewLocationFormats.Add("/Categories/{2}/Views/Shared/{0}.cshtml");
options.AreaViewLocationFormats.Add("/Views/Shared/{0}.cshtml");
});
需要注意的一點是,Views 文件夾的結構是唯一需要重點考慮的,其他文件夾如 Controller 和 Modes 的內(nèi)容并不重要。因為?Controller 和 Modes? 的內(nèi)容只是被編譯成 .dll 代碼,而不是作為 Views 的內(nèi)容直到視圖被請求。
在發(fā)布時需要注意發(fā)布 Area 文件夾,需要發(fā)布 Area 文件夾下的所有 view 。
原文鏈接:https://www.cnblogs.com/afei-24/p/11379582.html
相關推薦
- 2022-01-20 關于 Symbol() 能不能當作 key值使用
- 2022-07-09 二分查找實現(xiàn)及優(yōu)化思考
- 2022-04-28 C++?動態(tài)數(shù)組模版類Vector實例詳解_C 語言
- 2022-10-23 在Asp.net?core項目中使用WebSocket_實用技巧
- 2023-02-09 React?Context原理深入理解源碼示例分析_React
- 2022-05-15 C++?Clock類模擬實現(xiàn)鬧鐘運行_C 語言
- 2022-06-14 ASP.NET?Core?MVC中的布局(Layout)_基礎應用
- 2023-02-07 Pytorch中torch.argmax()函數(shù)使用及說明_python
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學習環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結構-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支