Как установить локальный каталог, размещенный на IIS, как источник пакета NuGet? - PullRequest
0 голосов
/ 20 декабря 2018

Я настроил локальный каталог (C: \ NuGet) для размещения локальных пакетов NuGet.Затем я разместил это место на IIS (localhost: 619).Затем я добавил это местоположение в свой файл NuGet.Config следующим образом:

<packageSources>
  <remove key="Local" />
  <add key="Local" value="http://localhost:619/" />
</packageSources>

Когда я открываю менеджер пакетов, я получаю следующую ошибку:

[Local] The V2 feed at 'http://localhost:619/Search()?$filter=IsAbsoluteLatestVersion&searchTerm=''&targetFramework='net452'&includePrerelease=true&$skip=0&$top=26&semVerLevel=2.0.0' returned an unexpected status code '404 Not Found'.

Есть ли способ обойти эту ошибку или заставить ее работать?

1 Ответ

0 голосов
/ 23 декабря 2018

NuGet поддерживает только .nupkg s в папке для каналов на основе файловой системы (URL-адреса, которые могут быть представлены с помощью file: //).Любой канал HTTP должен реализовывать один из протоколов NuGet HTTP. В ссылке , опубликованной в виде комментария к вашему вопросу billybob, перечислены несколько серверов NuGet, которые вы можете разместить на своем веб-сервере.

Я укажу на Sleet, написанный бывшим участником NuGet от Microsoft.команда.Это генератор статического сайта, то есть он создает кучу файлов, а затем вы просто обслуживаете эти файлы так же, как в настоящее время пытаетесь обслуживать .nupkg s, ему не нужно веб-приложение, которое динамически генерирует контент,или база данных.Но каждый раз, когда вы добавляете удалить .nupkg, вам необходимо восстановить все статические файлы.

В качестве альтернативы, вы можете просто использовать сетевой общий ресурс, а не HTTP.Хотя это неэффективно, если ваши разработчики используют пользовательский интерфейс диспетчера пакетов Visual Studio для поиска пакетов, так что вам будет лучше использовать любой канал HTTP, если у вас много .nupkg s.

...