我有一個包含類庫和控件庫的多個項目的獨立解決方案。該解決方案及其所有項目都在TFS源代碼控制之下。在Visual Studio中使用共享庫項目的多個解決方案
我引用在所有新項目的我養成了一個或多個這些庫的輸出。引用目前是二進制而不是項目引用。
新項目也總是源控制之下,現在我需要添加的調試庫支持。
如果我引用來自它們的庫項目,項目文件被修改,不再因爲源代碼控制磁帶庫和referencee原始庫解決方案的工作可能會有所不同。
有沒有簡單的方法來適應這種情況?
我有一個包含類庫和控件庫的多個項目的獨立解決方案。該解決方案及其所有項目都在TFS源代碼控制之下。在Visual Studio中使用共享庫項目的多個解決方案
我引用在所有新項目的我養成了一個或多個這些庫的輸出。引用目前是二進制而不是項目引用。
新項目也總是源控制之下,現在我需要添加的調試庫支持。
如果我引用來自它們的庫項目,項目文件被修改,不再因爲源代碼控制磁帶庫和referencee原始庫解決方案的工作可能會有所不同。
有沒有簡單的方法來適應這種情況?
你應該打包共享的二進制文件,以及索引PDB的,轉換成一個Nuget包。 Nuget是專門爲解決這些問題而設計的。
你可以索引你的PDB的通過運行一個索引工具。 TF Build可以自動索引你的PDB。
沒有。
但是,您可以使用一些策略。最簡單的(可能但不是在某些情況下)是構建您希望調試的項目,將二進制文件放在託管它們的應用程序之上,並將調試器附加到正在運行的應用程序。這可以確保你在調試組件的正確版本,但你可能需要做有害的東西,如確保你不瞄準組件的特定版本
這可能是一個正在開發的程序集的壞消息。它也需要大量的手工的,這取決於其中您的應用程序運行時可能需要運行遠程調試,處理問題傳遞的dll跨不受信任的網絡,等等等等
在這種情況下保持特定版本爲false的好指針,但答案似乎是'不'。想要以這種方式附加項目的目的是在任何情況下更改庫(使其始終處於開發中)。保持兩個visual studio調試實例(這是我已經做的)似乎是唯一的出路。 – 2015-02-09 19:52:40
您是否嘗試過?右鍵單擊您的新項目解決方案 - >添加 - >現有項目並瀏覽所需的庫/庫?我不是100%確定的,因爲我目前不能訪問VS,但我認爲這可能會解決您的問題。 – snajahi 2015-02-09 15:31:50
如果可以,請考慮在您的TFS構建過程中包含nuget包裝程序。 – kidshaw 2015-02-09 20:31:52