Хотя это не отвечает на вопрос, я думаю, что этот пункт очень интересен, и также трудно найти информацию о. «Для того чтобы проекты .net Framework были совместимы со стандартными библиотеками .net, вы должны приобрести NETStandard.Library у nuget».
онец установил Visual Studio 2017.2 и пытаюсь запустить мой первый проект, но у меня возникли некоторые проблемы, которые я надеюсь решить здесь.
У меня есть очень простая стандартная библиотека .NET, описанная как следующий файл проекта:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard1.6</TargetFramework>
</PropertyGroup>
</Project>
И очень простое консольное приложение .NET Framework, которое ссылается на вышеуказанную стандартную библиотеку .NET и описывается как следующий файл проекта:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net45</TargetFramework>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Common\Common.csproj" />
</ItemGroup>
</Project>
Когда я собираю консольное приложение, я получаю следующую ошибку сборки:
C:\Program Files\dotnet\sdk\1.0.4\NuGet.targets(97,5): error : Project Common is not compatible with net45 (.NETFramework,Version=v4.5). Project Common supports: netstandard1.6 (.NETStandard,Version=v1.6)
Я виделэтот вопрос и попробовал некоторые из предложенных там предложений, но ни одно из них не сработало. Таким образом, это, кажется, другая проблема. Обратите внимание, что это происходит во время сборки моего решения и не ссылается на (явные) пакеты NuGet каким-либо образом.
Наконец, если это поможет, у меня есть решение, которое демонстрирует эту проблему здесь:https://github.com/Mike-EEE/Stash/blob/master/VS2017.Multi/VS2017.dotNetFramework.sln