visual-studio-2010 - visual - vs2012 nuget




如何將NuGet軟件包安裝到解決方案的第二個項目中? (5)

在Visual Studio 2015中(截至Nuget v3.1.2),現在的語法是:

Install-Package ThePackage -ProjectName YourProjectName

注意: - 項目名稱與項目

我目前正在研究一個最初包含一個項目( My.First.Project.Name )的解決方案。 我已經安裝了Castle Windsor,執行:

Install-Package Castle.Windsor

我剛剛在解決方案中添加了另一個項目( My.Second.Project.Name ),並且還想將Castle Windsor安裝到此項目中,但是當我再次運行Install-Package Castle.Windsor時,出現錯誤:

已安裝'Castle.Core 2.5.2'
已安裝'Castle.Windsor 2.5.2'
My.First.Project.Name已經引用了'Castle.Core 2.5.2'
My.First.Project.Name已具有對“Castle.Windsor 2.5.2”的引用

所以我的問題是: 我如何說服NuGet Package Manager將軟件包安裝到第二個項目中


在Visual Studio中,您可以轉至Tools -> NuGet Package Manager -> Manage NuGet Packages for the entire Solution 。 從那裡,選擇您想要在項目之間共享的Nuget包,然後單擊Manage 。 這將允許你添加一個特定的已安裝NuGet包到你想要的任何其他項目。


尷尬的是,答案是非常簡單。

“軟件包管理器控制台”在其工具欄中有一個名為“默認項目”的下拉列表,將項目更改為My.Second.Project.Name然後允許Install-Package Castle.Windsor將軟件包安裝到第二個項目中。


有3種方法:)。
在NuGet 1.1(最新版本)中,我們改進了PowerShell管道,所以你可以這樣做:

Get-Project -All | Install-Package SomePackage

這會將“SomePackage”安裝到您的所有項目中。 您可以使用通配符來縮小哪些項目的範圍:

Get-Project Mvc* | Install-Package SomePackage

這將使用通配符語義(在這種情況下,查找所有以mvc開頭的項目)。

Get-Project SomeProject | Install-Package SomePackage

這會將SomePackage安裝到SomeProject中,而不是其他任何東西。


還有強制重新安裝的選項。 有一些問題,這對我有幫助。

Update-Package Microsoft.Owin -Reinstall




nuget