CLI(命令行接口)和PMC(包管理控制台)

众所周知,CLI是包含在.NET SDK中,执行.NET SDK命令的命令行工具,输入dotnet -h查看所有命令。

我们知道.NET SDK在windows/Linux/macOS都有相应的版本,所以,CLI可以在以上系统中运行。

CLI十分强大,我们可以通过命令安装包(dotnet add)和工具(dotnet tool install)

SDK 命令:
add 将包或引用添加到 .NET 项目。
build 生成 .NET 项目。
build-server 与由生成版本启动的服务器进行交互。
clean 清理 .NET 项目的生成输出。
help 显示命令行帮助。
list 列出 .NET 项目的项目引用。
msbuild 运行 Microsoft 生成引擎(MSBuild)命令。
new 创建新的 .NET 项目或文件。
nuget 提供其他 NuGet 命令。
pack 创建 NuGet 包。
publish 发布 .NET 项目进行部署。
remove 从 .NET 项目中删除包或引用。
restore 还原 .NET 项目中指定的依赖项。
run 生成并运行 .NET 项目输出。
sln 修改 Visual Studio 解决方案文件。
store 在运行时包存储中存储指定的程序集。
test 使用 .NET 项目中指定的测试运行程序运行单元测试。
tool 安装或管理扩展 .NET 体验的工具。
vstest 运行 Microsoft 测试引擎(VSTest)命令。
 
PMC顾名思义是用来安装包的

以安装Microsoft.EntityFrameworkCore.SqlServer为例
.NET Core CLI
  dotnet add package Microsoft.EntityFrameworkCore.SqlServer
PMC
  Install-Package Microsoft.EntityFrameworkCore.SqlServer
所以两者都是工具(tool),但工作范围差距很大,这里还要说到的一个工具(dotnet ef),使用ef6和entityframework core肯定需要该工具
前面说了,我们可以通过CLI安装tool,我们可将dotnet ef 安装为全局工具或本地工具
CLI
  dotnet tool install --global dotnet-ef
可到官网看dotnet ef的用途:https://docs.microsoft.com/zh-cn/ef/core/cli/dotnet
虽然dotnet ef命令也可以在PMC中使用,如下图所示

但一般建议安装一下包使得PMC适用于EF Core(也可用CLI安装此包,因为它只是个包呀)

  PM>Install-Package Microsoft.EntityFrameworkCore.Tools

安装这个包后,就可在PMC中做(dotnet ef能做的)数据库操作了,如Add-MigrationUpdate-Database

博客备忘,一起成长。
原文地址:https://www.cnblogs.com/lumingprince/p/14140268.html