Как установить пакет NuGet во второй проект в решении?
в настоящее время я работаю над решением, которое изначально содержало один проект (My.First.Project.Name
). Я установил замок Виндзор, выполнив:
Install-Package Castle.Windsor
Я только что добавил еще один проект (My.Second.Project.Name
) на решение и хотите установить замок Виндзор в этот проект, но когда я запускаю Install-Package Castle.Windsor
опять же, я получаю ошибку:
'.Core 2.5.2 ' уже установлен
Замок.Windsor 2.5.2 ' уже установлен
Мой.Во-первых.Проект.Название уже есть ссылка на замок.Основной 2.5.2'
Мой.Во-первых.Проект.Название уже есть ссылка на замок.Виндзор 2.5.2'
Итак, мой вопрос: как убедить менеджера пакетов NuGet установить пакет во второй проект?
7 ответов
есть 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 и ничего больше.
есть два подхода.
Как вы уже узнали, в консоли диспетчера пакетов есть раскрывающийся список проектов в вашем решении.
другой подход-использовать флаг-Project. Хорошая вещь в том, что это дает вам Intellisense с именами проектов! Например:
Install-Package SomePackage -Project MvcApplication2
ответ, embarassingly, blindlingly просто.
" консоль диспетчера пакетов "имеет раскрывающийся список" проект по умолчанию " на панели инструментов, меняя проект на My.Second.Project.Name
и Install-Package Castle.Windsor
для установки пакета во второй проект.
в Visual Studio 2015 (по состоянию на Nuget v3.1.2) синтаксис теперь:
Install-Package ThePackage -ProjectName YourProjectName
Примечание: - Projectимя vs-Project
в Visual Studio можно перейти к Tools -> NuGet Package Manager -> Manage NuGet Packages for the entire Solution
. Оттуда выберите пакет Nuget, который вы хотите разделить между проектами, и нажмите Manage
. Это позволит вам добавить определенный установленный пакет NuGet в любой другой проект, который вы хотите.
Если вам просто нужно скопировать пакеты из существующего проекта в Новый, просто скопируйте и / или измените пакеты.файл конфигурации для нового проекта и запустите Update-Package -reinstall -Project YourProjectName
существует также возможность принудительной переустановки. С некоторыми проблемами это помогло мне.
Update-Package Microsoft.Owin -Reinstall