全宇宙首個.NET5+Vue.js前後端分離以及業務模組化快速開發框架【NetModular】發布~
- 2020 年 10 月 22 日
- 筆記
最近.Net圈子很熱鬧啊,我也來湊湊,今天中午耗時長達半小時,把NetModular升級到了.NET5,詳情查看分支//github.com/iamoldli/NetModular/tree/feature_net5
NetModular
NetModular是什麼
NetModular 是一款為中小型企業而生的基於.Net Core平台的業務模組化快速開發解決方案,最終目的是能夠讓中小團隊快速搭建公司內部開發平台。
NetModular有哪些特點
1、模組化
以模組化為思想,以業務領域為理念,以包管理(nuget\npm)為基礎,充分解耦業務功能,使業務最大化的得到復用,極大減少重複開發時間,結合在線程式碼生成器,讓您「一天一模組,三天一系統」不再是夢想。
2、內置ORM
基於Dapper封裝的輕量級ORM,支援多種資料庫自由切換,內置CRUD、軟硬刪除、Lamdba表達式查詢、多表連接查詢、分組查詢、跨庫連接查詢、日期分庫分表以及自定義分表策略,提供多個常用實體基類和對應功能,如自動設置創建人、創建日期、修改人、修改日期、刪除人、刪除日期等功能。
3、多租戶
得益於自己擴展的ORM,非常簡單的就實現了數據共享模式的多租戶功能
4、簡單易用
完善的基礎設施,包括簡單易用高效的ORM、日誌組件(Serilog)、對象映射(AutoMapper)、Api文檔(Swagger)、快取(MemoryCachge/Redis)、強類型驗證(FluentValidation)、消息隊列(RabbitMQ)、任務調度(Quartz)等功能模組,用什麼注入即可。
5、不寫文檔
當然,NetModular最大的特點就是作者的良苦用心,為了能夠讓大家多多閱讀程式碼,堅持不完善文檔的精神~
後端框架結構說明
框架模組 | 說明 | 版本 |
---|---|---|
00_Host | 主機庫 | |
01_Utils | 通用基礎庫 | |
02_Data | 輕量級ORM庫(基於 Dapper 擴展) | |
03_Logging | 日誌庫(基於 Serilog 擴展) | |
04_Mapper | 對象映射庫(基於 AutoMapper 擴展) | |
05_Swagger | 介面文檔庫(基於 Swashbuckle 擴展) | |
06_Cache | 快取庫,支援記憶體快取和Redis | |
07_Validation | 模型驗證庫(基於 FluentValidation 擴展) | |
08_Auth | 身份認證庫,已實現JWT認證方式 | |
09_Module | 業務模組化核心庫 | |
10_MQ | 消息通訊庫,實現對RabbitMQ的封裝 | |
11_Quartz | 基於 Quartz.Net 封裝的任務調度庫 | |
12_Excel | Excel擴展庫 | |
13_Config | 通用配置庫 | |
14_Pdf | PDF擴展庫 | |
15_MQTT | MQTT擴展庫(未實現) | |
16_OSS | 對象存儲庫,內含七牛雲SDK的Core版本 |
開發環境
開發工具
後端
.Net Core 3.1、Dapper、Serilog、AutoMapper、FluentValidation、Swagger、RabbitMQ、Redis、EPPlus
前端
前端框架 NetModular.UI
前端採用Vue.js全家桶+Element UI開發,也是基於模組化思想設計,源碼不在本倉庫,請移步 NetModular.UI
前端皮膚
前端支援自定義皮膚功能,框架本身提供了兩套皮膚,其中一套已經內置作為默認皮膚,另外一套需要單獨安裝,源碼如下:
編碼 | 版本 | 倉庫地址 |
---|---|---|
Classics | NetModular.Skins.Classics |
演示地址
本倉庫只包含後端框架程式碼,為了方便大家調試運行,同時包含了許可權管理模組的程式碼,但是演示地址是把現有的幾個模組整合後發布的,所以當你運行本倉庫發現與線上不一樣的時候,請下載演示源碼,並且需要自己配置菜單~
演示地址://demo.17mkh.com/
賬 戶:admin
密 碼: admin
演示源碼://github.com/iamoldli/NetModular.Demo
官方文檔
文檔地址: //docs.17mkh.com
文檔項目的源碼請移步: //github.com/iamoldli/NetModular.Docs
模組列表
本倉庫只包含基礎框架以及許可權管理(Admin)模組程式碼,其它模組請點擊以下鏈接查看~
編號 | 編碼 | 說明 | 版本 | 倉庫地址 |
---|---|---|---|---|
00 | Admin | 許可權管理 | 本倉庫 | |
01 | Common | 通用模組 | NetModular.Module.Common | |
02 | CodeGenerator | 模組創建(又名程式碼生成器) | NetModular.Module.Common | |
03 | Quartz | 任務調度 | NetModular.Module.Quartz | |
04 | PersonnelFiles | 人事檔案 | NetModular.Module.PersonnelFiles |
技術交流
QQ 群:點擊加群 903210423