包 Microsoft.AspNetCore.Authentication.JwtBearer 5.0.0 与 netcoreapp3.1 不兼容,但它的目标是 net 5.0
Package Microsoft.AspNetCore.Authentication.JwtBearer 5.0.0 is not compatible with netcoreapp3.1 yet it's targeting net 5.0
我正在从 .Net Core 3.1 迁移到 .NET 5.0。
我不断收到此错误消息:
Package Microsoft.AspNetCore.Authentication.JwtBearer 5.0.0 is not compatible with netcoreapp3.1 (.NETCoreApp,Version=v3.1) / win-x86. Package Microsoft.AspNetCore.Authentication.JwtBearer 5.0.0 supports: net5.0 (.NETCoreApp,Version=v5.0)
我明白它在说什么,但我不知道它为什么这么说。
我的项目以 .NET 5.0 为目标。
我的 csproj 文件如下所示:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<UserSecretsId>5e2f8086-7a94-402a-bd2a-4160e9236c8f</UserSecretsId>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Authentication" Version="2.2.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="5.0.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Abstractions" Version="2.2.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Formatters.Json" Version="2.2.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="5.0.0" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="5.0.0" />
</ItemGroup>
</Project>
我不确定它为什么告诉我 3.1。
我手动删除了 bin 和 obj 文件夹,尝试更新所有 nuget 包和 clean/rebuild 项目,但每个 time.v
我都遇到了同样的问题
我在 Visual Studio 16.8.2.
编辑
我要指出,这个错误不是编译器错误!如果我在 Visual Studio 中调试,网站运行良好。此错误消息仅在我尝试发布时出现
首先,我只是快速浏览了一下,我认为这可能与您有一些版本不支持 3.1 的库有关,这就是您收到错误的原因。
但只是为了确定:There is a Microsoft guide for this specific migration。
您可以按照以下步骤解决您的问题。
下载 NET 5.0 SDK here。
您需要 Visual Studio 16.8
或更高版本才能在 Windows 上使用 .NET 5.0。请确认您的 VS 版本。
包裹:<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.2.0" />
是
已过时,请删除项目文件中的引用。
清理并重建。
真尴尬
发布的目标框架仍设置为 .NET Core 3.1
您可以安装 microsoft.aspnetcore.authentication.jwtbearer 版本 3.1.x 如果您还没有升级到版本 5.
,请单击 nuget 中的版本下拉列表
我正在从 .Net Core 3.1 迁移到 .NET 5.0。
我不断收到此错误消息:
Package Microsoft.AspNetCore.Authentication.JwtBearer 5.0.0 is not compatible with netcoreapp3.1 (.NETCoreApp,Version=v3.1) / win-x86. Package Microsoft.AspNetCore.Authentication.JwtBearer 5.0.0 supports: net5.0 (.NETCoreApp,Version=v5.0)
我明白它在说什么,但我不知道它为什么这么说。
我的项目以 .NET 5.0 为目标。
我的 csproj 文件如下所示:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<UserSecretsId>5e2f8086-7a94-402a-bd2a-4160e9236c8f</UserSecretsId>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Authentication" Version="2.2.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="5.0.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Abstractions" Version="2.2.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Formatters.Json" Version="2.2.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" Version="5.0.0" />
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="5.0.0" />
</ItemGroup>
</Project>
我不确定它为什么告诉我 3.1。
我手动删除了 bin 和 obj 文件夹,尝试更新所有 nuget 包和 clean/rebuild 项目,但每个 time.v
我都遇到了同样的问题我在 Visual Studio 16.8.2.
编辑
我要指出,这个错误不是编译器错误!如果我在 Visual Studio 中调试,网站运行良好。此错误消息仅在我尝试发布时出现
首先,我只是快速浏览了一下,我认为这可能与您有一些版本不支持 3.1 的库有关,这就是您收到错误的原因。
但只是为了确定:There is a Microsoft guide for this specific migration。
您可以按照以下步骤解决您的问题。
下载 NET 5.0 SDK here。
您需要
Visual Studio 16.8
或更高版本才能在 Windows 上使用 .NET 5.0。请确认您的 VS 版本。包裹:
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.2.0" />
是 已过时,请删除项目文件中的引用。清理并重建。
真尴尬
发布的目标框架仍设置为 .NET Core 3.1
您可以安装 microsoft.aspnetcore.authentication.jwtbearer 版本 3.1.x 如果您还没有升级到版本 5.
,请单击 nuget 中的版本下拉列表