告別996 !.Net Core開源模塊化快速開發(fā)解決方案——NetModular(.net core 開源項目)
介紹
NetModular 是一個以模塊化為核心的快速開發(fā)框架,能夠讓中小企業(yè)快速從零搭建自己的開發(fā)平臺;開箱即用,讓開發(fā)者專注于自己的業(yè)務(wù)開發(fā),以模塊化的方式,最大化的代碼復(fù)用,避免重復(fù)開發(fā),拒絕 996,讓廣大程序員有更多的時間放飛自我。
倉庫
- Gitee
https://gitee.com/laoli/NetModular
https://gitee.com/laoli/NetModular.Demo
- Github:
https://github.com/iamoldli/NetModular
https://github.com/iamoldli/NetModular.Demo
框架介紹
- 模塊化
以模塊化為思想,以業(yè)務(wù)領(lǐng)域為理念,以包管理(nugetnpm)為基礎(chǔ),充分解耦業(yè)務(wù)功能,使業(yè)務(wù)最大化的得到復(fù)用,極大減少重復(fù)開發(fā)時間,結(jié)合在線代碼生成器,讓您“一天一模塊,三天一系統(tǒng)”不再是夢想。
- 簡單易用
完善的基礎(chǔ)設(shè)施,包括簡單易用高效的ORM、日志組件(Serilog)、對象映射(AutoMapper)、Api文檔(Swagger)、緩存(MemoryCachge/Redis)、強類型驗證(FluentValidation)、消息隊列(RabbitMQ)、任務(wù)調(diào)度(Quartz)等功能模塊,用什么注入即可。
- 內(nèi)置ORM
基于Dapper封裝的輕量級ORM,支持多種數(shù)據(jù)庫自由切換,內(nèi)置CRUD、軟硬刪除、Lamdba表達式查詢、多表連接查詢、分組查詢、跨庫連接查詢、日期分庫分表以及自定義分表策略,提供多個常用實體基類和對應(yīng)功能,如自動設(shè)置創(chuàng)建人、創(chuàng)建日期、修改人、修改日期、刪除人、刪除日期等功能。
- 多種應(yīng)用模式
提供多種應(yīng)用模式,包括Host.Web(Web應(yīng)用)、Host.Generic(控制臺應(yīng)用)、Host.Electron(基于Electron的跨平臺客戶端應(yīng)用)三種模式,三種模式共用同一套底層代碼。
- 前端框架
采用前后端分離模式以及JWT驗證方式,基于Vue.js全家桶以及Element-UI組件庫實現(xiàn)了一整套模塊化的解決方案,封裝了數(shù)十種組件,完善的權(quán)限管理功能以及靈活的可配置性
- 開箱即用
提供通用權(quán)限管理(Admin)、基礎(chǔ)數(shù)據(jù)(Common)、任務(wù)調(diào)度(Quartz)、代碼生成(CodeGenerator)等模塊,開箱即用,讓您專注于自己的業(yè)務(wù)開發(fā)。
開發(fā)環(huán)境
- IDE
Visual Studio 2019 、Visual Studio Code
- 后端
.Net Core 3.1、Dapper、Serilog、AutoMapper、FluentValidation、Swagger
- 前端
Node.js 10 、Vue.js 2.6 、Vue CLI、Vuex、VueRouter、Element-UI
Demo
作者為我們提供了一個Demo,地址上方已經(jīng)給出,下面簡單說下配置,主要是數(shù)據(jù)庫部分
- 1、下載項目
使用你喜愛的開發(fā)工具打開(如Visual Studio 2019、Rider、Visual Studio Code)
- 2、依據(jù)下圖所示配置好你的數(shù)據(jù)庫
筆者本地是SqlServer數(shù)據(jù)庫,你也可以使用Mysql或者SqlLite,可自行嘗試(配置在config/db.json文件)
- 3、配置后端后再使用VSCode打開前端項目
安裝相關(guān)依賴,筆者使用yarn進行包管理,你也可以使用npm
yarn#或者npm install#啟動yarn serve
啟動成功后打開提示給出的本地地址,可自行配置修改,打開后進入登陸頁面,用戶名和密碼都是admin
界面預(yù)覽
以上截取部分Demo中的截圖,可自行配置并查看,框架的作者提供了其線上demo,也可以直接查看,此處不方便給出,可前往倉庫地址尋找
最后
筆者很佩服NetModular的作者,可能不僅僅是他,市面上也見到很多大佬的開源作品,他們?yōu)樽约核诘念I(lǐng)域默默付出貢獻。筆者也希望有朝一日會有屬于自己驕傲的開源作品,做出自己的貢獻!