Visual Studio 2015, обновление 3, не может прочитать пакет NuGet - PullRequest
0 голосов
/ 11 мая 2018

Я могу читать пакеты с NuGet.org, но я не могу читать только определенные пакеты с нашего частного сервера NuGet - Klondike .

Я отслеживал запросы, сделанные VS2015 для загрузки пакета и строки запроса, которые VS2015 отправляет источнику NuGet:

?$filter=IsAbsoluteLatestVersion&searchTerm='Package-ID'&targetFramework='net'&includePrerelease=true&$skip=0&$top=126

Проблема с параметром targetFramework. Когда VS2015 использует targetFramework='net', тогда он не может прочитать пакеты для платформы net461, они пропускаются.

Когда я выполнил запрос в Почтальоне и установил targetFramework='net461', я смог найти пакет.

Также я заметил, что VS2015 время от времени изменяет целевую структуру с net на net461.

У меня вопрос: Нужно ли мне настраивать VS2015 или мне нужно изменить пакет NuGet?

Пакет NuGet создается из проекта .NET Core 2.0 и имеет конфигурацию:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFrameworks>netcoreapp2.0;net461</TargetFrameworks>
    <Company>Stackoverflow</Company>
    <Authors>kat1330</Authors>
    <Description>Package consists banch of functionalities.</Description>
    <PackageTags>rules, rule engine</PackageTags>
    <GeneratePackageOnBuild>false</GeneratePackageOnBuild>
    <IncludeSymbols>true</IncludeSymbols>
    <IncludeSource>True</IncludeSource>
    <SignAssembly>true</SignAssembly>
    <AssemblyOriginatorKeyFile>..\cert.snk</AssemblyOriginatorKeyFile>
    <DelaySign>true</DelaySign>
    <VersionPrefix>1.0.0</VersionPrefix>
    <VersionSuffix>$(VersionSuffix)</VersionSuffix>
    <ApplicationIcon>favicon.ico</ApplicationIcon>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Newtonsoft.Json" Version="11.0.2" />
  </ItemGroup>

</Project>

ОБНОВЛЕНИЕ: Версия диспетчера пакетов NuGet: 3.5.0.1484 . Это последнее, что предлагается для Visual Studio 2015 для меня.

1 Ответ

0 голосов
/ 16 мая 2018

Я могу найти пакеты с nuget.org и "определенные пакеты" из частного источника.«Определенные пакеты» означают, что некоторые видны, а некоторые нет

Поскольку вы можете найти пакеты из nuget.org и «определенные пакеты» из частного источника («Определенные пакеты» означают, что некоторые видны, а некоторые нет).), поэтому причина невидимого пакета должна быть связана с самим пакетом , а не с nuget и закрытым источником.

В соответствии с примером конфигурации для пакета, я заметил, что значениеGeneratePackageOnBuild имеет значение False вместо True :

  <PropertyGroup>
    ...
    <GeneratePackageOnBuild>false</GeneratePackageOnBuild>
    ...
  </PropertyGroup>

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

Надеюсь, это поможет.

...