再次,我回答我的問題...
點是,我正在改變溶液的結構和周圍移動的一些項目。這意味着,您在每個項目的.csproj文件中獲得無效的相對路徑。沒關係,只要你不改變結構的深度,我就是這麼做的。
對於未知的原因,調試版本很好,無效路徑(可能會收集一些其他方式,因爲我手動刪除bin和obj文件夾和清除解決方案等)。但是對於發佈版本,它試圖從(錯誤引用的)軟件包/目錄中獲取程序集。
NuGet進程的任何部分都沒有發現/報告過這個問題,並且在所有的UI控制檯中,甚至在NuGet PowerShell控制檯本身中,一切似乎都沒問題。
解決方案很明顯。編輯受影響項目的.csproj文件(實際上,我通過過濾警告和發現,只有一些程序集受到影響,而且這些程序集來自主解決方案目錄之外),並將程序集引用的路徑更改爲正確的NuGet程序包夾。
附註:這是NuGet(也可能是VS)參考處理的問題。它試圖使用一些相對路徑,而不是像$ {SOLUTION_ROOT}或$ {NUGET_ROOT}或$ {PACKAGES_FOLDER}那樣添加一些變量。如果是通過變量替換完成的,則可以在多個解決方案中使用相同的項目,而不會破壞NuGet包配置。至少我還沒有找到在多個解決方案中共享同一個項目文件夾的方法。
我有同樣的問題,但是由.csproj文件的合併引起的。我不得不卸載/編輯項目並刪除重複的引用,以便NuGet可以在解決方案中重新加載項目文件後再次管理它們。 – tmgirvin 2016-02-04 23:23:50