newtonsoft.json 9.0.1 与新创建的 Visual Studio 项目中的 netcoreapp1.1 不兼容
newtonsoft.json 9.0.1 not compatible with netcoreapp1.1 in newly created Visual Studio Project
我在 Visual Studio 2017 年创建了一个新的 ASP.NET 核心 Web 应用程序,并立即收到以下错误:
Restoring NuGet packages...
Package Newtonsoft.Json 9.0.1 is not compatible with netcoreapp1.1 (.NETCoreApp,Version=v1.1). Package Newtonsoft.Json 9.0.1 supports:
- net20 (.NETFramework,Version=v2.0)
- net35 (.NETFramework,Version=v3.5)
- net40 (.NETFramework,Version=v4.0)
- net45 (.NETFramework,Version=v4.5)
- netstandard1.0 (.NETStandard,Version=v1.0)
- portable-net40+sl5+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile328)
- portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
One or more packages are incompatible with .NETCoreApp,Version=v1.1.
NuGet package restore failed.
似乎Newtonsoft.Json 与netcoreapp 不兼容,但如果是这样,VisualStudio 为什么要包含它?我是 ASP.NET 的新手,所以也许我遗漏了什么?我按照 ASP.NET Core Docs.
中的步骤操作
在搜索时我发现了一些类似的问题,但 none 似乎与 VS 2017 兼容。
这里还有我的 .csproj 文件,如果有帮助的话:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp1.1</TargetFramework>
</PropertyGroup>
<PropertyGroup>
<PackageTargetFallback>$(PackageTargetFallback);portable-net45+win8+wp8+wpa81;</PackageTargetFallback>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.0.0" />
<PackageReference Include="Microsoft.AspNetCore" Version="1.1.1" />
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.1" />
<PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="1.1.0" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.0" />
</ItemGroup>
</Project>
好的,我刚刚重新安装了 Visual Studio,从安装程序修复了它并清除了 NuGet 缓存,现在它可以正常工作了。似乎设置不正确。
我在 Visual Studio 2017 年创建了一个新的 ASP.NET 核心 Web 应用程序,并立即收到以下错误:
Restoring NuGet packages...
Package Newtonsoft.Json 9.0.1 is not compatible with netcoreapp1.1 (.NETCoreApp,Version=v1.1). Package Newtonsoft.Json 9.0.1 supports:
- net20 (.NETFramework,Version=v2.0)
- net35 (.NETFramework,Version=v3.5)
- net40 (.NETFramework,Version=v4.0)
- net45 (.NETFramework,Version=v4.5)
- netstandard1.0 (.NETStandard,Version=v1.0)
- portable-net40+sl5+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile328)
- portable-net45+win8+wp8+wpa81 (.NETPortable,Version=v0.0,Profile=Profile259)
One or more packages are incompatible with .NETCoreApp,Version=v1.1.
NuGet package restore failed.
似乎Newtonsoft.Json 与netcoreapp 不兼容,但如果是这样,VisualStudio 为什么要包含它?我是 ASP.NET 的新手,所以也许我遗漏了什么?我按照 ASP.NET Core Docs.
中的步骤操作在搜索时我发现了一些类似的问题,但 none 似乎与 VS 2017 兼容。
这里还有我的 .csproj 文件,如果有帮助的话:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>netcoreapp1.1</TargetFramework>
</PropertyGroup>
<PropertyGroup>
<PackageTargetFallback>$(PackageTargetFallback);portable-net45+win8+wp8+wpa81;</PackageTargetFallback>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.0.0" />
<PackageReference Include="Microsoft.AspNetCore" Version="1.1.1" />
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.1" />
<PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="1.1.0" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Tools" Version="1.0.0" />
</ItemGroup>
</Project>
好的,我刚刚重新安装了 Visual Studio,从安装程序修复了它并清除了 NuGet 缓存,现在它可以正常工作了。似乎设置不正确。