NETSDK1061: проект был восстановлен с использованием Microsoft.NETCore.App версии 1.0.0, но с текущими настройками вместо него будет использоваться версия 2.0.9

Я занимаюсь разработкой мобильного приложения и использую MS App Center для CI. Вчера проект модульного теста не удалось собрать в App Center со следующей ошибкой. Я не смог воссоздать проблему на любом компьютере разработчика, эта ошибка возникает только в App Center.

error : NETSDK1061: The project was restored using Microsoft.NETCore.App version 1.0.0, but with current settings, version 2.0.9 would be used instead. To resolve this issue, make sure the same settings are used for restore and for subsequent operations such as build or publish. Typically this issue can occur if the RuntimeIdentifier property is set during build or publish but not during restore. For more information, see https://aka.ms/dotnet-runtime-patch-selection.

Их платная поддержка просто дает основы, очищает проект, откатывает мой последний коммит. Кто-нибудь сталкивался с этой проблемой раньше в App Center?

Ответ 1

Вы должны установить одинаковую среду публикации и сборки

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>netcoreapp2.1</TargetFramework>
    <RuntimeFrameworkVersion>2.1.0</RuntimeFrameworkVersion> --> fix publishing issues
    <PlatformTarget>AnyCPU</PlatformTarget> --> fix publishing issues
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Update="Microsoft.NETCore.App" Version="2.1.0" /> --> fix building issues
    <ProjectReference Include="..\PublicSonar.Monitor.Persistent.Json\PublicSonar.Monitor.Persistent.Json.csproj" />
  </ItemGroup>
</Project>

Ответ 3

Попробуйте добавить <TargetLatestRuntimePatch>true</TargetLatestRuntimePatch> в свой <PropertyGroup>. Пример:

  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
    <TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>
  </PropertyGroup>

Ответ 4

Я нахожусь на Visual Studio 2019, и этот ответ поставил меня на правильный путь, моя процедура была:

  • Удалите все экземпляры Microsoft.NET Core SDK с моей машины.
  • Перезагрузил компьютер.
  • Установлена последняя версия SDK отсюда.

Ответ 5

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

Что я сделал, чтобы избавиться от этой ошибки:

  • Измените режим развертывания на зависимый от платформы
  • Опубликовать проект
  • Измените его обратно на автономный и снова опубликованный

Кажется, это вызвано неисправным кешем, который можно очистить, переключившись в другой режим развертывания.

Ответ 7

Что решило эту проблему для меня, так это обновить стандартный кеш пакета NuGet "C:\Users\.nuget\packages", используемый для восстановления, изменив параметр в msvc:

Инструменты> Параметры> Диспетчер пакетов NuGet> Восстановление пакета> Разрешить NuGet загружать отсутствующий пакет & Автоматически проверять отсутствующие пакеты во время сборки в Visual Studio.