Obecnie pracuję nad rozwiązaniem, które początkowo zawierało jeden projekt ( My.First.Project.Name
). Zainstalowałem Castle Windsor, wykonując:
Install-Package Castle.Windsor
Właśnie dodałem do projektu kolejny projekt ( My.Second.Project.Name
) i chcę zainstalować Castle Windsor również w tym projekcie, ale kiedy uruchomię Install-Package Castle.Windsor
ponownie, pojawia się błąd:
„Castle.Core 2.5.2” już zainstalowany
”Castle.Windsor 2.5.2” już zainstalowany
My.First.Project.Name ma już odniesienie do „Castle.Core 2.5.2”
My.First.Project.Name ma już odniesienie do „Castle.Windsor 2.5.2”
Moje pytanie brzmi zatem: jak przekonać Menedżera pakietów NuGet do zainstalowania pakietu w drugim projekcie ?
źródło
Install-Package SomePackage
do zainstalowania go w bieżącym projekcie.Istnieją dwa podejścia.
Jak już się dowiedziałeś, w Konsoli Menedżera pakietów znajduje się lista rozwijana z listą projektów w Twoim rozwiązaniu.
Innym podejściem jest użycie flagi -Project. Zaletą jest to, że daje Intellisense z nazwami projektów! Na przykład:
źródło
Odpowiedź jest zawstydzająco, oślepiająco prosta.
„Konsola Menedżera pakietów” ma pasek narzędzi zatytułowany „Projekt domyślny”, zmieniając tam projekt, aby
My.Second.Project.Name
umożliwićInstall-Package Castle.Windsor
instalację pakietu w drugim projekcie.źródło
W Visual Studio 2015 (od Nuget v3.1.2) składnia jest teraz:
Uwaga: -Project Nazwa vs -Project
źródło
W Visual Studio możesz przejść do
Tools -> NuGet Package Manager -> Manage NuGet Packages for the entire Solution
. Następnie wybierz pakiet Nuget, który chcesz udostępnić między projektami, i kliknijManage
. Umożliwi to dodanie konkretnego zainstalowanego pakietu NuGet do dowolnych innych projektów.źródło
Jeśli potrzebujesz tylko skopiować pakiety z istniejącego projektu do nowego, po prostu skopiuj i / lub zmodyfikuj plik packages.config do nowego projektu i uruchom
Update-Package -reinstall -Project YourProjectName
źródło
Istnieje również opcja wymuszenia ponownej instalacji. Z pewnymi problemami pomogło mi to.
źródło