Восстановление зависимостей в коде Visual Studio использует неверный источник / канал - PullRequest
0 голосов
/ 20 октября 2018

Я не уверен, как установить стандартную ленту новостей для моего основного проекта .net в коде Visual Studio на https://api.nuget.org/v3/index.json

Когда я пытаюсь добавить пакет (и впоследствии восстановить зависимости),Я получаю следующие ошибки ...

C:\Program Files\dotnet\sdk\2.1.403\NuGet.targets(114,5): error : Unable to load the service index for source https://smartassessor.pkgs.visualstudio.com/_packaging/SANuget/nuget/v3/index.json. [c:\Users\Matthew.OConnor\Desktop\Important Documents\Programming\DatingApp\DatingApp.API\DatingApp.API.csproj]
C:\Program Files\dotnet\sdk\2.1.403\NuGet.targets(114,5): error :   Response status code does not indicate success: 401 (Unauthorized). [c:\Users\Matthew.OConnor\Desktop\Important Documents\Programming\DatingApp\DatingApp.API\DatingApp.API.csproj]

Этот источник https://smartassessor.pkgs.visualstudio.com/_packaging/SANuget/nuget/v3/index.json не имеет никакого отношения к моему текущему проекту, однако он используется для других проектов, которые обычно выполняются с использованием полнофункциональной Visual Studio.Эти проекты сохраняются в совершенно другом месте этого проекта.

Я просто хочу иметь возможность добавлять пакеты nuget из nuget.org в мой основной проект .net.Как мне сделать это в коде VS?

У меня в настоящее время нет файла nuget.config в этом проекте.

Источник пакета, упомянутый в сообщении об ошибке, кажется, поступает из источника пакета, который я настроил при использовании Visual Studio

enter image description here

Этомой csproj файл ...

<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <Folder Include="wwwroot\"/>
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App"/>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.1.4"/>
    <PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="4.0.1"/>
    <PackageReference Include="CloudinaryDotNet" Version="1.3.1"/>
  </ItemGroup>
  <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="2.1.0-preview1-final"/>
  </ItemGroup>
</Project>

CloudinaryDotNet - это пакет, который сгенерировал ошибки выше.

1 Ответ

0 голосов
/ 20 октября 2018

Я думаю, что VS Code просто запускает dotnet restore, и причина, по которой вы видите, что этот источник используется, заключается в том, что он сконфигурирован в вашем конфигурационном файле nuget пользователя / компьютера (расположенном в окнах, которые вы, кажется, запускаете,на %appdata%\NuGet\NuGet.Config и %ProgramFiles(x86)%\NuGet\Config соответственно).Редактор конфигурации VS, который вы показали, является просто хорошим графическим интерфейсом для этого файла конфигурации.

Если вы хотите сохранить этот общий параметр, вы сможете использовать файл nuget.config в своем проекте VS Code (который выупомянул у вас нет в данный момент).Подробнее об этом здесь - Добавить пользовательский источник пакета в код Visual Studio .

Кроме того, если вы пытаетесь восстановить вручную, вы можете использовать один из этих двух флагов -

  • dotnet restore --source https://api.nuget.org/v3/index.json
  • dotnet restore --ignore-failed-sources

Это довольно очевидно, но вы можете увидеть полную документацию здесь - https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-restore?tabs=netcore2x

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

...