ABP VNext簡介及使用代碼生成器ABPHelper自動生成代碼


ABP VNext簡介

ABP VNext是abp團隊重新設計的主要版本的ASP.NET Boilerplate框架。

ABP VNext改進了哪些方面?

  • 引入ASP.NET Core內置解決方案(擴展庫),取消第三方和自定義解決方案依賴;
  • 模塊細化。例如,核心Abp包包含許多功能,如DDD類、審計、授權、后台作業、事件總線、json序列化、本地化、多租戶、線程、時間等......意將所有這些功能拆分到各自的包中並使它們可選;
  • 放棄對傳統技術的支持。不再支持ASP.NET MVC 5.x、Entity Framework 6.x和其他傳統技術;新的ABP框架將基於.net standard。因此,仍然可以在新的ABP框架中使用完整的.net framework或.net core。
  • 微服務。新的ABP框架可方便的開發微服務並使它們相互通信。亦可作為微服務單獨部署,或者可以嵌入到單個應用程序中。
  • 更多可擴展性。新的ABP框架為內置服務提供了更多的擴展點和覆蓋的能力。

ABP框架特點

  • DDD領域驅動設計
  • 多租戶
  • 模塊化和結構縮小
  • 主題化
  • Http Api和動態代理
  • 授權,基於Microsoft Identity庫,具有用戶、角色和細粒度的高級授權
  • 橫切關注點,完整的己出架構,用於授權,嚴重,異常處理,緩存,審核日志記錄,事務管理等
  • 虛擬文件系統
  • Bootstrap標簽幫助和動態表單

ABP VNext腳手架安裝及使用

  1. 使用命令行安裝ABP VNext環境
    dotnet tool install -g Volo.Abp.Cli

  2. 使用腳手架新建一個項目
    abp new BookPro --mobile react-native
    --mobile表示不需要創建移動端,如果需要完整的包含移動端,可以直接用以下代碼
    abp new BookPro
    新建的項目目錄如下

  3. 簡單介紹一下項目目錄中比較關鍵的幾個分層

  • Application層存放Service服務,提供給展現層使用。
  • Application.Contracts層是從Application層分離出來的一層,存放Service服務的接口及DTO。
  • Domain層存放實體、領域服務及倉儲接口
  • Domain.Shared層是從Domain層分離出來的,存放枚舉,常量,以及本地化。
  • EntityFrameworkCore層存放倉儲的實現。
  • Web層作為展現層,項目的入口。
  1. 項目初始化
    將Web層作為啟動項目,打開程序包管理控制台,默認項目選擇DbMigrations。
    輸入命令Add-Migration ini進行初始化
    初始化完成后,輸入updata-database,完成數據庫表的生成。

使用ABPHelper生成業務代碼

安裝 AbpHelper CLI 工具
dotnet tool install EasyAbp.AbpHelper -g

在解決方案的Domain層根目錄新建一個文件夾Students,然后在該文件夾中新建一個類Student。

運行 AbpHelper
使用命令行執行以下代碼進行代碼生成
abphelper generate crud Student -d C:\BookPro
generate crud 是生成CRUD文件的子命令
Student 指定了我們先前創建的實體名
-d 指定了由ABP CLI創建的ABP項目的根目錄,也就是sln解決方案所在目錄。

代碼生成后,我們看到各層對應的代碼均生成完畢,不得不說這個工具簡單使用。

今天的介紹就到這啦!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM