Ошибка для .NETStandard1.6 PCL: ваш проект не ссылается на платформу .NETPlatform, версия = v5.0.

Чтобы воспроизвести проблему, были предприняты следующие шаги для создания .NETStandard1.6 PCL в Visual Studio 2015:

  1. Создайте новую библиотеку классов (переносимую для iOS, Android и Windows).
  2. На странице свойств нажмите «Целевая платформа .NET Standard».
  3. Измените форму .NETStandard .NETStandard1.1 на .NETStandard1.6.
  4. Создайте этот пустой проект.

Возникает следующая ошибка:

>C:\Program Files (x86)\MSBuild\Microsoft\NuGet\Microsoft.NuGet.targets(140,5): error : Your project is not referencing the ".NETPlatform,Version=v5.0" framework. Add a reference to ".NETPlatform,Version=v5.0" in the "frameworks" section of your project.json, and then re-run NuGet restore.

Ниже приведен проект.json:

{
  "supports": {},
  "dependencies": {
    "Microsoft.NETCore.Portable.Compatibility": "1.0.1",
    "NETStandard.Library": "1.6.0"
  },
  "frameworks": {
    "netstandard1.6": {}
  }
}

Может ли кто-нибудь дать совет о том, как добавить ссылку на «.NETPlatform, Version = v5.0» в раздел «frameworks»? Я пробовал следующее:

"донет5.4": {}

"донет5.0": {}

Ни то, ни другое не работает.


person Hong    schedule 16.01.2017    source источник
comment
Попрощайтесь с этим. Переключитесь на VS2017.   -  person Lex Li    schedule 17.01.2017
comment
Я с нетерпением жду возможности использовать VS2017, но не раньше, чем через пару недель. Вот вам и полезные комментарии.   -  person Stonetip    schedule 28.02.2017


Ответы (2)


Для VS2015 в самом конце файла .csproj добавьте:

<PropertyGroup>
    <NuGetTargetMoniker>.NETStandard,Version=v1.6</NuGetTargetMoniker>
</PropertyGroup>
person Stonetip    schedule 27.02.2017

У меня была такая же ошибка, я добавил следующее в свой project.json

"frameworks": {
            "netstandard1.4": {
                "imports": "portable-net45+win8+wpa81+wp8"
            }
            "netplatform50": {}
  }

Это сработало для меня

person Rene    schedule 07.06.2017