199 votes

Comment puis-je installer un package NuGet dans le deuxième projet dans une solution?

Je suis actuellement en train de travailler sur une solution qui, initialement, contenait un projet (My.First.Project.Name). J'ai installé le Château de Windsor en exécutant:

Install-Package Castle.Windsor

J'ai juste ajouté un autre projet (My.Second.Project.Name) à la solution et que vous souhaitez installer Château de Windsor dans ce projet aussi, mais quand je le lance en Install-Package Castle.Windsor encore une fois, j'obtiens l'erreur:

'Château.Core 2.5.2 déjà installé
'Château.Windsor 2.5.2 déjà installé
Mon.D'abord.Projet.Nom a déjà une référence à 'Château.Core 2.5.2'
Mon.D'abord.Projet.Nom a déjà une référence à 'Château.Windsor 2.5.2'

Donc ma question est: Comment puis-je convaincre le Gestionnaire de Package NuGet pour installer le paquet dans le deuxième projet?

325voto

dfowler Points 16530

Il y a 3 approches: -).
Dans NuGet 1.1 (La dernière version), nous avons amélioré powershell pipelining de sorte que vous pouvez le faire:

Get-Project -All | Install-Package SomePackage

Qui va installer "SomePackage" dans tous vos projets. Vous pouvez utiliser des caractères génériques pour affiner les projets qui:

Get-Project Mvc* | Install-Package SomePackage

Qui va utiliser les caractères génériques de la sémantique (dans ce cas, trouvez tous les projets qui commencent avec mvc).

Get-Project SomeProject | Install-Package SomePackage

Qui va installer SomePackage en SomeProject et rien d'autre.

143voto

Haacked Points 31070

Il y a deux approches.

Comme vous l'avez déjà appris, le Gestionnaire de paquets de la Console a un menu déroulant qui répertorie les projets de votre solution.

L'autre approche consiste à utiliser le Projet du pavillon. Belle chose à ce sujet est qu'il vous donne Intellisense avec les noms de projets! Par exemple:

Install-Package SomePackage -Project MvcApplication2

84voto

Rob Points 24505

La réponse est, embarassingly, blindlingly simple.

Le "Gestionnaire de paquets de la Console" a une liste déroulante intitulée "Projet par Défaut" dans sa barre d'outils, en changeant le projet, il y à My.Second.Project.Name permet alors Install-Package Castle.Windsor pour installer le paquet dans le second projet.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X