在 ASP.NET Core 2.2/3.1 项目升级 5.0 时遇到的一些问题,以及对应的解决方法

Dotnet CLI 没有 ef 指令

问题描述

在 ASP.NET Core 2.2/3.1(3.0 存疑) 时可以直接使用 dotnet ef database 指令进行数据库操作

ASP.NET Core 5.0 后直接执行 dotnet ef 会提示没有 dotnet-ef 指令

解决方法

5.0 后需要手动安装 ef core 的 CLI 指令,执行

dotnet tool install -g dotnet-ef

全局安装 dotnet ef 相关指令

EF Core CLI 无法执行数据库相关操作

问题描述

执行 dotnet ef 指令时提示没有引入 Microsoft.EntityFrameworkCore.Design 组件,在项目内安装 Microsoft.EntityFrameworkCore.Design 并且在 .csproj 文件内引入后无果ASP.NET Core 2/3 升级 5.0 部分问题的解决方法

解决方法

在项目根目录执行

dotnet add package Microsoft.EntityFrameworkCore.Design

Continue reading “ASP.NET Core 2/3 升级 5.0 部分问题的解决方法”

问题描述

Dotnet Core 3.x 及之前版本发布单文件只需要添加参数

-p:PublishSingleFile=true

但是升级到 .NET 5 后,使用此参数发布后仍会带四个 dll 文件:clrcompression.dll, clrjit.dll, coreclr.dll 和 mscordaccore.dll,如图.NET 5 发布单文件的 dll 问题

参考

解决方法

除了

-p:PublishSingleFile=true

还需要添加参数

-p:IncludeNativeLibrariesForSelfExtract=true

效果

.NET 5 发布单文件的 dll 问题