Лучший способ добавить пакеты NuGet в качестве ссылок на проекты в VS2012?
ОК. Очень быстрый вопрос, я, наверное, просто тупой.
Если вы щелкните правой кнопкой мыши на папке "ссылки на проекты", а затем "Управление пакетами NuGet", вы можете установить пакеты, и они автоматически ссылаются на проект, на который вы нажали. Но затем я хочу добавить ту же ссылку на другие проекты в том же решении. Если вы повторяете предыдущий, но нажимаете на другой проект, единственный вариант-удалить пакет (поскольку он уже установлен), что является правильным способ добавления существующего (уже установленного) пакета NuGet в качестве ссылки на проект? Должен ли я добавить ссылку с помощью обычного диалогового окна и "обзор" в dll в папке packages? Используйте один метод для добавления первой ссылки, а затем другой для последующих ссылок? Это не кажется правильным.
4 ответа:
можно использовать
Manage NuGet packages for Solution...
by:
- щелкните правой кнопкой мыши на решении
Tools > Library Package Manager > Manage NuGet packages for Solution
затем вы можете выбрать, в каких проектах установить пакет, как на скриншоте ниже: Кроме того, вы можете добавить установленный пакет в другие проекты в решении, используя тот же
Manage NuGet packages for Solution...
.
другой ответ здесь мне не помог. Вот что я сделал, я не знаю другого способа сделать это. Я использую VS 2013.
- Я установил пакет в консоль диспетчера пакетов, например
PM> Install-Package Newtonsoft.Json
- в обозревателе решений щелкните правой кнопкой мыши ссылки выберите Добавить ссылку
- Нажмите кнопку Обзор и перейдите к библиотеке dll в каталоге пакетов в папке решения.
Это добавляет относительный путь для ссылки на проект, поэтому он должен работать с другими людьми, получая код из системы управления версиями в разные каталоги.
У меня была та же проблема. Решение опубликовано kristianp работает, как ожидалось, это может быть немного громоздким, однако, при работе с большим количеством пакетов. Решение, которое сработало для меня, было просто отредактировать имя_моего_проекта.csproj файл в блокноте, и просто скопировать-вставить ссылки из другого проекта, как так:
... <ItemGroup> <Reference Include="Microsoft.AspNet.SignalR.Core"> <HintPath>..\packages\Microsoft.AspNet.SignalR.Core.2.1.2\lib\net45\Microsoft.AspNet.SignalR.Core.dll</HintPath> </Reference> <Reference Include="Microsoft.AspNet.SignalR.SystemWeb"> <HintPath>..\packages\Microsoft.AspNet.SignalR.SystemWeb.2.1.2\lib\net45\Microsoft.AspNet.SignalR.SystemWeb.dll</HintPath> </Reference> ...
надеюсь, это кому-то поможет. Это спасло меня много кликов:)
в настоящее время я использую Консоль Диспетчера Пакетов (Вид->Другие Окна->Консоль Диспетчера Пакетов).
скорее всего, все, что вам когда-либо понадобится, это следующие две команды:
install-package <package-name> [-version <version-number>] [-project <project-name]
и
update-package <package-name> [-reinstall] [-version <version-number>] [-project <project-name>]
здесь
- запасные части в квадратных скобках [ ] являются необязательными.
- 'install-package' будет установлен в указанный проект, или если не указан тот, который выбран в выпадающем списке' Default Project ' вверху командное окно.
- 'update-package' будет применять изменения к каждому проекту, если проект не указан.
- '- reinstall ' означает удалить, а затем снова установить пакет с тем же номером версии.