Автообновление пакета nuget из локальной папки

Мой.NET Core проект ссылается на библиотеку классов из другого проекта.

Я публикую пакет nuget в локальной папке, например так:

"scripts": {
  "postcompile": [
    "dotnet pack --no-build --configuration %compile:Configuration% -o D:\\mynugetpackages\\%project:Name%"
  ]
}

Затем я добавляю ссылку на другой проект из этой папки.

Каждый раз, когда я обновляю свою библиотеку классов, мне приходится вручную переходить к управлению пакетами nuget, а затем обновлять пакеты nuget из Visual Studio в ссылочном проекте.

Есть ли способ автоматизировать это, чтобы при создании обновления и публикации последнего пакета nuget ссылочный проект автоматически обновлялся до последнего обновления?

1 ответ

Решение

Нет, Visual Studio не может автоматически определить, что пакет обновлен (в локальном или удаленном источнике).

Вы можете написать скрипт для запуска обновления nuget в целевом проекте, чтобы получить последние пакеты, но вам все равно, вероятно, придется запустить скрипт вручную. По крайней мере, это будет быстрее, чем щелкать вручную через графический интерфейс NuGet в Visual Studio.

Другой вариант - поместить библиотеку классов в ту же структуру папок решения, что и ваш основной проект, и ссылаться на нее как на зависимость проекта:

"dependencies": {
  "MyClassLib": {
    "target": "project"
  }
}

Это работает, только если вы можете принять эту структуру папок, хотя:

src/
  MyProject/
  MyClassLib/
Другие вопросы по тегам