2012-12-28 33 views
2

我已經創建了一個Web應用程序(mvc4),我想在多個項目中重複使用它。該網站是一個管理面板,但可能會在每個項目中進行擴展和稍微修改。我想避免複製項目,因爲我希望能夠以最低的成本將每個項目更新到最新版本。如何重用mvc應用程序

到目前爲止,我已經試過2點的方法:

  • 一個腳本,「克隆」項目通過複製所有必要的事情以及改變他人(以組件,命名空間之類的東西的GUID) - 此適用於可擴展性和修改,但這只是一個副本,所以推動「更新」是一團糟(我手動完成),並沒有擴展。
  • 來自mvc contrib項目的可移植區域 - 這看起來似乎是一個好主意,但事實證明,這對於簡單的場景來說很好,但在更高級的用例中失敗了。它不支持本地化(來自嵌入在可移植區域的資源),捆綁和min需要大量的黑客(mvc contrib仍然在mvc 3上),但不可能(開箱即用)重用共享視圖或顯示/編輯器模板來自便攜式區域,看起來好像我是否會更進一步,會出現一些新的東西

目前我正在考慮'只是'從核心分支每個項目。這當然需要我在前面提到的腳本中完成的相同更改(或至少是其中的一大部分),如果我試圖從核心項目中提取更新,衝突的數量將會呈現整個方法無法使用。

有沒有人有我如何解決這個問題的想法?

+0

你有沒有考慮過使用Nuget?您必須小心避免新版本覆蓋消費者項目中的更改,但nuget絕對值得一看。 –

+0

是的,但不滿足所有要求。在修改後的文件中進行更新通常是一種情況,如果修改了文件,nuget會跳過覆蓋 – Chris

回答

0

我建議創建一個mvc應用程序的NuGet包並重用它。因此,版本控制和應用更新將變得更加容易。然而,需要一點工作才能使您的代碼與您希望添加到新項目中的代碼完全隔離。