我們選擇使用nuget來管理私有(.NET)庫,但已經對DLL的版本化變得越來越乏味。使用Nuget庫進行開發和調試
比方說,我們有以下共享庫在兩個項目:
- Shared_DAL
- Shared_Model
- Shared_BLL
- Shared_Mvc((上Shared_DAL和Shared_Model取決於)取決於Shared_BLL和Shared_Model
然後,在每個具體項目中我們都有:
- Project_Model(取決於Shared_Model)
- Project_BLL
- Project_Mvc(上Shared_DAL,Shared_Model和Project_Model取決於)(取決於Shared_Model,Shared_BLL,Project_Model和Project_BLL)
問題我們現在的情況是,要測試在特定項目中對Shared_BLL所做的更改是非常困難的。目前,我們要:
- 建立Shared_BLL作爲NuGet包
- 的NuGet包部署到私有倉庫
- 運行update-包裝Shared_BLL含Project_Mvc和Project_BLL
解決方案這是非常困難和巨大的開銷。
我們嘗試了另一種方法,其中一個將暫時刪除DLL引用,並以修改後的DLL文件的直接引用代替它們。但是,你必須撤銷對項目的所有改變,這並不是特別好。
我在這裏錯過了什麼嗎?如果您在開發生命週期中使用NuGet,那麼您如何處理DLL?
更新:對於誰是面臨同樣的問題的人,我們已經搬離的NuGet距離,直到這被整理出來,並依靠把DLL文件中的特定文件夾,並在每個項目中使用的HintPath絕對路徑文件。構建事件會更新定義目錄中的DLL,並且可以調試Shared和Project。
也許擴展http://visualstudiogallery.msdn.microsoft.com/68878c27-110c-43ec-ae61-3ea3f7aae88c對你的第二種方法很有用(在nuget和項目引用之間切換) –