我正在尝试在Azure上发布我的ASP.NET Core 3.1 Web API,但在EF迁移时出现错误:
当我在控制台中运行以下命令时:
dotnet tool install dotnet-ef --version 3.1.32
我得到这个错误:
错误NU 1202:包dotnet-ef 3.1.32与net 60(.NETFramework,Version=v6.0)/ any不兼容。包dotnet-ef 3.1.32支持:网络核心应用程序3.1(. NET核心应用程序,版本=v3.1)/任何
dotnet:无法还原工具包。
如果我运行dotnet --info
,我会得到以下结果:
.NET SDK (reflecting any global.json):
Version: 6.0.115
Commit: 1d8c2d93c0
Runtime Environment:
OS Name: Windows
OS Version: 10.0.19045
OS Platform: Windows
RID: win10-x64
Base Path: C:\Program Files\dotnet\sdk\6.0.115\`
.NET SDKs installed:
3.1.426 [C:\Program Files\dotnet\sdk]
6.0.115 [C:\Program Files\dotnet\sdk]
.NET runtimes installed:
Microsoft.AspNetCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
即使我的应用程序是在.NET Core 3.1中,为什么它要寻找.NET 6?它从哪里获取该值?我如何让它为我的应用程序工作?
我尝试设置环境变量'MSBuildSDKsPath'指向3.1.426的SDK,但仍然不走运
1条答案
按热度按时间9jyewag01#
我尝试了Visual Studio 2022和.NET Framework 3.1。
并且能够安装
dotnet tool install dotnet-ef --version 3.1.32
使用下面的命令
从命令安装了软件包Microsoft.EntityFrameworkCore -版本3.1.32。
已成功安装。
使用的是Framework 3.1,和你说的一样。