第一章 Net 5.0 快速開發框架 YC.Boilerplate--框架介紹


YC.Boilerplate 框架介紹

YC.Boilerplate 是一套快速開發框架,采用當下流行的前后端分離開發模式,前端 采用VUE、后端采用Net 5.0;框架實現了 多租戶、動態webApi、多種ORM、IOC、數據庫表和業務代碼生成等等一系列模塊,並開發了用戶管理、角色權限、組織機構、 數據字典、審計日志等常規功能,前后端代碼一鍵生成。

框架的宗旨:構建一套松耦合、靈活組合、功能齊全、開發便捷、減少開發工作量的樣板化開發框架。

在線文檔:http://doc.yc-l.com/#/README
在線演示地址:http://yc.yc-l.com/#/login
源碼github:https://github.com/yc-l/yc.boilerplate
源碼gitee:https://gitee.com/yc-power/yc.boilerplate
元磁之力框架技術群QQ:1060819005

視頻教程:
元磁之力框架開源初心和框架設計介紹(上): https://www.bilibili.com/video/BV1VM4y1G7hC/
元磁之力框架開源初心和框架設計介紹(下): https://www.bilibili.com/video/BV15h411s7w6/
元磁之力框架數據庫表和代碼生成使用教程實戰: https://www.bilibili.com/video/BV1oM4y137D5/

后續:關於框架demo和細節技巧,會在QQ群中發布,就不撰文說明。

框架技術棧和開發模式

  • 開發模式:當下流行的前后端分離。
  • 前端:vue、elementUI等技術棧,為單頁面應用程序提供了項目模板。
  • 后端采用NET 5.0。

框架特點

  • 模塊化開發,靈活組合,將解耦進行到底,按需注入使用。
  • 當下流行的開發模式,分層明確。
  • 配合框架自帶代碼生成器快速完成CRUD和樹形等復雜功能邏輯實現,不敲一行代碼,節省60%工作量。

框架分層介紹

  • 核心層:YC.Core 主要實現頂層設計類接口規范和一些類的封裝,比如:租戶接口、AopInterceptor AOP 攔截注入、TokenContext token邏輯、公共特性等等。
  • 數據層:YC.DapperFrameWorkYC.FreeSqlFrameWork 多項ORM 封裝,主要存在倉儲、工作單元等。
  • 公共層:YC.Common 主要是各種公共類的使用。
  • 業務服務層:YC.ApplicationService 業務邏輯實現,默認實現動態webapi。
  • 實體層:YC..Model 常規的數據表實體,枚舉等,以及常規的model需要用的基礎方法。
  • 業務Api層:YC.ServiceWebApi 提供對外接口服務啟動項目。

模塊層(按需使用)

  • 數據庫表和代碼生成模塊:YC.CodeGenerate
  • Redis 緩存模塊:YC.Cache.Redis
  • 動態WebApi模塊:YC.Core.DynamicApi
  • 日志模塊:YC.Log.Serilog
  • 定時服務 Quartz.net YC.QuartzService
  • Mongodb 模塊 YC.MongoDB
  • 圖數據庫Neo4j YC.Neo4j

單元測試

微軟自帶單元測試:UnitTestProject
數據庫表和代碼生成測試:YC.CodeGenerateTest
其他各個模塊配套的單元測試:YC.QuartzTestYC.MongoDbXUnitTestYC.Neo4jXUnitTest

框架功能模塊

框架特性

  1. 基於最新的.NET技術 NET 5.0。
  2. 實現領域驅動設計(實體、倉儲、領域服務、領域事件、應用服務、數據傳輸對象,工作單元等等)。
  3. 實現分層體系結構(領域層,應用層,展現層和基礎設施層)。
  4. 提供了一個基礎架構來開發可重用可配置的模塊。
  5. 集成一些最流行的開源框架/庫,也許有些是你正在使用的。
  6. 提供了一個基礎架構讓我們很方便地使用依賴注入(使用Autofac作為依賴注入的容器)。
  7. 提供Repository倉儲模式支持不同的ORM(已實現dapperFramework 、freesqlFrameWork、Redis等)。
  8. 支持並實現數據庫遷移(采用自由映射Table )。
  9. 模塊化開發(每個模塊有獨立的采用autofac模塊注入形式,根據不同業務可以動態切換指定數據庫)。
  10. 統一的異常處理(應用層幾乎不需要處理自己寫異常處理代碼)。
  11. 通過Application Services自動創建Web Api層(不需要寫ApiController層了)。
  12. 提供基類和幫助類讓我們方便地實現一些常見的任務。
  13. 使用“約定優於配置原則”。
  14. 實現多租戶,按照不同的租戶分庫服務端。
  15. 實現了基於表模型生成對應的全流程代碼,包括:model、DTO、Service、前端展示界面(常規CRUD和樹形功能)、路由規則、Mapper model和Dto映射等代碼。
  16. 框架已經實現常規基礎功能,如:身份驗證用戶&角色管理、系統設置、存取管理(系統級、租戶級、用戶級,作用范圍自動管理)、審計日志(自動記錄每一次接口的調用者和參數)、組織機構等,實現框架開箱即用。
  17. 框架采用redis 作為cache和session 存儲,脫離cookie 使用,解決非web的等也可以使用框架進行多樣的場景需求改造。

項目界面展示

image

image

image

image

image

image

image

image


免責聲明!

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



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