安装 dotnet ef 成功,但调用时遇到错误

Posted

技术标签:

【中文标题】安装 dotnet ef 成功,但调用时遇到错误【英文标题】:Install dotnet ef success but when call it hit error 【发布时间】:2020-08-17 11:16:07 【问题描述】:

错误:发生致命错误。找不到所需的库 libhostfxr.so。如果这是一个独立的应用程序,该库应该存在于 [/home/alanee/.dotnet/tools/.store/dotnet-ef/3.1.3/dotnet-ef/3.1.3/tools/netcoreapp3.1/任何/]。如果这是依赖于框架的应用程序,请将运行时安装在全局位置 [/usr/share/dotnet] 或使用 DOTNET_ROOT 环境变量指定运行时位置或在 [/etc/dotnet/install_location] 中注册运行时位置。

.NET Core 运行时可以在以下位置找到:-https://aka.ms/dotnet-core-applaunch?missing_runtime=true&arch=x64&rid=ubuntu.20.04-x64

我当前的 dotnet 信息是:.NET Core SDK(反映任何 global.json):版本:3.1.201 提交:b1768b4ae7

运行环境:操作系统名称:ubuntu 操作系统版本:20.04 操作系统平台:Linux RID:linux-x64 基本路径:/snap/dotnet-sdk/69/sdk/3.1.201/

主机(用于支持):版本:3.1.3 提交:4a9f85e9f8

.NET Core SDK 已安装:3.1.201 [/snap/dotnet-sdk/69/sdk]

.NET Core 运行时安装:Microsoft.AspNetCore.App 3.1.3 [/snap/dotnet-sdk/69/shared/Microsoft.AspNetCore.App] Microsoft.NETCore.App 3.1.3 [/snap/dotnet-sdk /69/shared/Microsoft.NETCore.App]

要安装其他 .NET Core 运行时或 SDK:https://aka.ms/dotnet-download

【问题讨论】:

【参考方案1】:

进行如下配置并使用最新版本的dotnet-ef:

export PATH="$PATH:$HOME/.dotnet/tools"
export DOTNET_ROOT=/snap/dotnet-sdk/current
export MSBuildSDKsPath=$DOTNET_ROOT/sdk/$($DOTNET_ROOT/dotnet --version)/Sdks
export PATH="$PATH:$DOTNET_ROOT"
export PATH="$PATH:$HOME/.dotnet/tools"

【讨论】:

以上是关于安装 dotnet ef 成功,但调用时遇到错误的主要内容,如果未能解决你的问题,请参考以下文章

从 dotnet Core 2.2.6 更改为 3.0.0 后出现 EF Linq 错误

找不到命令“dotnet ef”

dotnet tool install --global dotnet-ef 失败

.NET SDK 5.0 版已成功安装,但 dotnet --list-sdks 仅显示 3.1.415 [/snap/dotnet-sdk/148/sdk]

dotnet-ef 与 net50 不兼容

如何调试 dotnet ef 数据库删除?