1)、使用命令行窗口安裝ABP 官方提供的CLI工具,安裝命令如下:
dotnet tool install -g Volo.Abp.Cli
,如下圖所示:

2)、如果在創建過程中因為網絡原因會連接失敗的話,可以使用ABP中文網上有與之對應的國內CLI工具,安裝命令如下:
dotnet tool install -g Cn.Abp.Cli
安裝成功如下圖所示:

3)、如果之前安裝過,需要更新,使用命令
dotnet tool update -g Cn.Abp.Cli
如下圖所示:

4)、比如在D盤創建一個目錄,然后使用命令
cnabp new Baidu.BookStore
來創建一個項目,如下圖所示:

5)、我們使用VS2017打開項目生成后的目錄下的sln解決方案文件,如下圖所示:

6)、我們打開Web下的appsettings.json文件,默認使用SQL Server數據庫作為EFCore操作的數據庫類型,如下圖所示:

7)、我們將項目解決方案下的DbMigrations項目作為啟動項目,如下圖所示:

8)、依次點擊菜單欄中的“工具”->“NuGet包管理器”->“程序包管理器控制台”,如下圖所示:

9)、默認項目選擇DbMigrations,然后輸入命令Update-Database,但是會出現錯誤,提示缺少Microsoft.EntityFramworkCore.Design包,如下圖所示:

10)、我們右鍵項目解決方案,選擇“管理解決方案的NuGet程序包”,如下圖所示:

11)、我們搜索Microsoft.EntityFrameworkCore.Design,然后安裝到DbMigrations項目中去,如下圖所示:

12)、我們將Web項目下的appsettings.json文件拷貝到DbMigrations項目根目錄下,如下圖所示:

13)、此時我們在程序包管理器控制台中再次輸入
Update-Database
就可以成功遷移數據庫,如下圖所示:

14)、此時我們打開SQL Server 數據庫,可以看到自動生成了一個名為BookStore的數據庫,如下圖所示:

15)、編譯運行程序,瀏覽器中打開Web應用的主頁界面,如下圖所示:

16)、點擊login,輸入用戶名admin,密碼1q2w3E*即可登錄系統,進入主頁后可以進行Identity身份驗證和Tenant多租戶管理操作,如下圖所示:

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" 命令的幫助.
————————————————
參考鏈接:
https://blog.csdn.net/S2T11Enterprise/article/details/104010039
https://docs.abp.io/zh-Hans/abp/latest/Startup-Templates/Application
https://docs.abp.io/zh-Hans/abp/latest/Best-Practices/Index