MAC 上的 dotnet 工具安装 --global dotnet-ef --version 3.0.0 导致未知的 Nuget 错误

dotnet tool install --global dotnet-ef --version 3.0.0 on MAC causes unknown Nuget Error

在我的 Web API 项目中升级到 .Net Core 3.1 后,我尝试了这个常用的 ef 命令 -

dotnet ef

得到:

Could not execute because the specified command or file was not found.

Possible reasons for this include:
  * You misspelled a built-in dotnet command.
  * You intended to execute a .NET Core program, but dotnet-ef does not exist.
  * You intended to run a global tool, but a dotnet-prefixed executable with this name could not be found on the PATH.

然后发现这个 -

因此,尝试过:

dotnet tool install --global dotnet-ef --version 3.0.0

得到:

/usr/local/share/dotnet/sdk/3.1.100/NuGet.targets(123,5): error : Unable to load the service index for source https://api.nuget.org/v2/index.json 
/usr/local/share/dotnet/sdk/3.1.100/NuGet.targets(123,5): error :   Response status code does not indicate success: 400 (Bad Request). 
The tool package could not be restored.
Tool 'dotnet-ef' failed to install. This failure may have been caused by: ...

如何修复?

找到这个 -

所以,然后在 MAC -

上打开了 Nuget.config
~/.nuget/Nuget/Nuget.config

并删除了其中的所有网址。

重新运行

dotnet tool install --global dotnet-ef --version 3.0.0 

工作:)

在 VS 中为 MAC 项目重新使用 NUGET(只是添加了任何 Nuget),我只剩下

<configuration>
    <packageSources>
        <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    <packageSources>
</configuration>

终于意识到使用了ef tools 3.0.0,于是更新完ef tools -

dotnet 工具更新 --global dotnet-ef