入门系列-ABP CLI
ABP CLI (命令行接口) 是一个命令行工具,用来执行基于ABP解决方案的一些常见操作.
Installation
ABP CLI 是一个 dotnet global tool. 使用命令行窗口安装:
dotnet tool install -g Volo.Abp.Cli
更新最新版本:
dotnet tool update -g Volo.Abp.Cli
Commands
new
生成基于ABP启动模板的新解决方案.
基本用法:
abp new <解决方案名称> [options]
示例:
abp new Acme.BookStore
- Acme.BookStore是解决方案的名称.
- 常见的命名方式类似于 YourCompany.YourProject. 不过你可以使用自己喜欢的方式,如 YourProject (单级命名空间) 或 YourCompany.YourProduct.YourModule (三级命名空间).
Options
--template
或者-t
: 指定模板. 默认的模板是app
,会生成web项目.可用的模板有:app
(default): 应用程序模板. 其他选项:--ui
或者-u
: 指定ui框架.默认mvc
框架.其他选项:mvc
: ASP.NET Core MVC.此模板的其他选项:--tiered
: 创建分层解决方案,Web和Http Api层在物理上是分开的.如果未指定会创建一个分层的解决方案,此解决方案没有那么复杂,适合大多数场景.
angular
: Angular. 这个模板还有一些额外的选项:--separate-identity-server
: 将Identity Server应用程序与API host应用程序分开. 如果未指定,则服务器端将只有一个端点.
none
: 无UI. 这个模板还有一些额外的选项:--separate-identity-server
: 将Identity Server应用程序与API host应用程序分开. 如果未指定,则服务器端将只有一个端点.
--database-provider
或者-d
: 指定数据库提供程序.默认是ef
.其他选项:ef
: Entity Framework Core.mongodb
: MongoDB.
module
: Module template. 其他选项:--no-ui
: 不包含UI.仅创建服务模块(也称为微服务 - 没有UI).
--output-folder
或者-o
: 指定输出文件夹,默认是当前目录.--version
或者-v
: 指定ABP和模板的版本.它可以是 release tag 或者 branch name. 如果没有指定,则使用最新版本.大多数情况下,您会希望使用最新的版本.
add-package
通过以下方式将ABP包添加到项目中
- 添加nuget包做为项目的依赖项目.
- 添加
[DependsOn(...)]
attribute到项目的模块类 (请参阅 模块开发文档).
需要注意的是添加的模块可能需要额外的配置,通常会在包的文档中指出.
基本用法:
abp add-package <包名> [options]
示例:
abp add-package Volo.Abp.MongoDB
- 示例中将Volo.Abp.MongoDB包添加到项目中.
Options
--project
或-p
: 指定项目 (.csproj) 路径. 如果未指定,Cli会尝试在当前目录查找.csproj文件.
add-module
通过查找模块的所有包,查找解决方案中的相关项目,并将每个包添加到解决方案中的相应项目,从而将多包应用程序模块添加到解决方案中.
由于分层,不同的数据库提供程序选项或其他原因,业务模块通常由多个包组成. 使用add-module
命令可以大大简化向模块添加模块的过程. 但是每个模块可能需要一些其他配置,这些配置通常在相关模块的文档中指出.
基本用法:
abp add-module <模块名称> [options]
示例:
abp add-module Volo.Blogging
- 示例中将Volo.Blogging模块添加到解决方案中.
Options
--solution
或-s
: 指定解决方案 (.sln) 路径. 如果未指定,CLI会尝试在当前目录中寻找.sln文件.--skip-db-migrations
: 对于EF Core 数据库提供程序,它会自动添加新代码的第一次迁移 (Add-Migration
) 并且在需要时更新数据库 (Update-Database
). 指定此选项可跳过此操作.-sp
或--startup-project
: 启动项目的项目文件夹的相对路径. 默认值是当前文件夹.
update
更新所有ABP相关的包可能会很繁琐,框架和模块都有很多包. 此命令自动将解决方案或项目中所有ABP相关的包更新到最新版本.
用法:
abp update [options]
- 如果你的文件夹中有.sln文件,运行命令会将解决方案中所有项目ABP相关的包更新到最新版本.
- 如果你的文件夹中有.csproj文件,运行命令会将项目中所有ABP相关的包更新到最新版本.
Options
--include-previews
或-p
: 将预览版, 测试版本 和 rc 包 同时更新到最新版本.
help
CLI的基本用法信息.
用法:
abp help [命令名]
示例:
abp help # 显示常规帮助.
abp help new # 显示有关 "New" 命令的帮助.