我创建了一个希望在多个项目中重用的网络应用程序 (mvc4)。该站点是一个管理面板,但可以在每个项目中对其进行扩展和稍微修改。我想避免复制项目,因为我希望能够以尽可能低的成本将每个项目更新到最新版本。
到目前为止,我已经尝试了 2 种方法:
- 通过复制所有必要的东西以及改变其他东西(程序集中的 guid、命名空间和类似的东西)来“克隆”项目的脚本 - 这对于可扩展性和修改效果很好,但这只是一个副本,所以推送“更新”是一团糟(我手动完成的)并且它无法扩展。
- 来自 mvc contrib 项目的可移植区域 - 起初这似乎是一个好主意,但事实证明它适用于简单的场景,但在更高级的用例中却失败了。它不支持本地化(来自可移植区域中嵌入的资源),捆绑和 min 需要大量 hack(mvc contrib 仍在 mvc 3 上),不可能(开箱即用)重用共享视图或 Display/来自便携式区域的编辑器模板,看起来如果我走得更远,就会出现一些新事物
目前我正在考虑从核心项目“只是”分支每个项目。这当然需要与我之前提到的脚本中所做的相同的更改(或至少其中的一个大子集),而且我担心如果我尝试从核心项目中提取更新,冲突的数量将呈现整个方法无法使用。
有谁知道我如何解决这个问题?