我们有一个分发给许多客户端的 Web 应用程序(asp.net mvc3)。大多数控制器和视图对于所有客户端都是相同的,但是有一些控制器和视图是为每个客户端定制的。目前,我们正在为每个客户复制解决方案,并使用定制的控制器和视图。但是通过这种方式,我们面临一个问题,当我们更改所有客户端通用的控制器时,我们通常必须在每个解决方案中修改它。我正在寻找一些方法来让一个通用的 mvc 项目包含通用的控制器和视图,对于定制的控制器,我希望有不同的 mvc 项目,所有这些项目都放在同一个解决方案中。例如
myApplication.web.ui.Core => contains common controllers.
myApplication.web.ui.Client1 => contains client 1 custom controllers.
myApplication.web.ui.Client2 => contains client 2 custom controllers.
所以当我需要为客户端 1 构建时,我会将 myApplication.web.ui.Client1 设置为启动项目,当我需要为客户端 2 构建时,我会将 myApplication.web.ui.Client2 设置为启动项目。