Dot-Net

如何將 ASP.NET MVC 應用程序中的模型、視圖和控制器分離到不同的程序集中

  • December 14, 2013

目前我正在嘗試進入 ASP.NET MVC 框架。

對於我的大多數測試應用程序,我使用了一個程序集/項目。這適用於一些較小的應用程序。然後我想知道如何將我的模型、控制器和視圖類放入單獨的程序集中?在非常大的 Web 應用程序中,將所有內容放入單個程序集/項目中是不太現實的。

所以我的問題是:是否可以告訴 ASP.NET MVC 框架在另一個程序集中搜尋視圖和/或控制器,而不會失去路由引擎的內置靈活性?

(未知)是正確的。創建兩個項目,一個類庫和一個 MVC Web 項目。MVC 項目應該引用包含控制器和程式碼隱藏文件(全域 asax 等)的類庫。這是一個範例佈局。

類庫應該只包含 .cs 文件而不包含視圖(.aspx/.ascx 文件)。

MyProject.BaseSite(類庫)
+ 控制器
- HomeController.cs
- ...任何其他控制器
- default.aspx.cs
- global.asax.cs

MVC Web 項目應包含配置、視圖等以及對您的類庫的引用

MyProject.ExampleSite
+ 內容
+ 腳本
+ CSS
+ 圖片
+ 意見
+ 首頁
- 索引.aspx
- .. 其他 aspx 文件
+ 共享
- Site.master
- web.config

記住不同的命名空間。然後,您可以創建多個引用相同程式碼的範例網站。這使您可以有效地對您的網站進行完全不同的皮膚。

引用自:https://stackoverflow.com/questions/910089