原文:https://blog.csdn.net/vM199zkg3Y7150u5/article/details/102550228
框架采用.NET Core + Vue前后端分離,並且支持前端、后台代碼業務動態擴展,框架內置了一套有着20多種屬性配置的代碼生成器,可靈活配置生成的代碼,代碼生成器界面配置完成即可生成單表(主表)的增、刪、改、查、導入、導出、上傳、審核基礎功能。只需要簡單了解即可上手開發
一、框架基礎功能已構建完成,可直接上手開發功能
-
Vol.WebApi類庫可獨立用於restful api服務單獨部署,用於其他系統單獨提供接口,直接上手編寫業務代碼即可
-
Vue+Vol.WebApi 可用於現有框架前后端分離進行開發
-
Vol.Web類庫可用於傳統MVC+Razor方式進行項目開發
-
Vol.Builder類庫可作為一個獨立的代碼生成器,可生成cshtml頁面、Vue頁面、Model文件、Service與Repository.cs業務處理代碼類
-
可作為一個獨立站點來發布靜態html網頁
-
可直接用於H5移動App開發H5開發:http://132.232.2.109/app/guide
二、框架特點
-
支持前端、后台基礎業務代碼動態擴展,可在現有框架增、刪、改、查、導入、導出、審核基礎業務上擴展復雜的業務代碼
-
基本業務全部由框架完成,上手即可對基礎業務以外的代碼進行擴展
-
上手簡單,需要.net core2.1、VsCode mysql/sqlservcer 2012、redis(可選) 及以上版本的開發環境
-
學習成本低,封裝了常用可擴展組件及Demo(前端基於Iview/Element-UI組件進行了二次封裝、后台提供了大量的擴展方法)
-
開發效率高,內定制開發的代碼生成器,生成前端(Vue、后台代碼),代碼生成器已完成90%以上的重復工作,只需要在提供的擴展類型中實現其他業務
-
前端vue頁面表單下拉/多選框完成自動綁定數據源,不需要寫任何代碼,並支持擴展自定開發綁定。
-
后台已完成權限、菜單、JWT等內部功能
如果你沒有做過webpack+vue工程化開發項目,可能會剛開始相當不適應,或者安裝環境總是出問題,但只要你熟悉開發流程后,你會發現采用Vue開發比Jquery爽太多了。上手項目需重點了解基礎Vue語法,特別是了解組件、路由及import的使用
三、開發及依賴環境
VS2017 、.NetCore2.1 、EFCore2.1、JWT、Dapper、Autofac、SqlServer/MySql、Redis(可選,沒有redis的在appsetting.json中不用配置,默認使用內置IMemory)、
VsCode、Vue2.0(webpack、node.js,如果沒有此環境自行搜索:vue webpack npm)、Vuex、axios、promise、IView、Element-ui
四、項目運行
如果你沒有前端環境,請先安裝node
前端開發使用VsCode
1、使用cmd命令切換至前端Vue項目.../VOL.Vue路徑下,執行npm install命令(只有從來沒執行過此命令的才執行npm install)
2、運行后端項目:在后端項目路徑.../VOL.WebApi/運行builder_run.bat端口設置的是9991,運行前先看appsettings.josn配置屬性說明
3、運行前端項目:在前端Vue項目路徑.../VOL.Vue/運行run.bat(每次啟動會進行編譯,這個時間可能會有點長)
4、輸入http://localhost:8080訪問
五、功能介紹
六、框架文檔、代碼生成器
Dome:http://132.232.2.109/
1、只讀基礎表單
整個只讀的基礎表單的所有前后端代碼,全部由代碼生成器生成,代碼生成器中幾乎不需要配置,並支持並后端業務代碼擴展,直接生成代碼后,配置菜單權限即可
2、自動綁定下拉框數據表單
整個自動綁定下拉框數據表單的所有前后端代碼,全部由代碼生成器生成,並支持並后端業務代碼擴展,在代碼生成器中只需要指定數據源編號,頁面加載時會根據編號自動加載數據源並綁定
3、啟用圖片支持、審核表單
整個啟用圖片支持、審核表單的所有前后端代碼,全部由代碼生成器生成,並支持並后端業務代碼擴展,審核功能需要在菜單配置權限、代碼生成器中勾選啟用圖片支持
4、高級查詢
整個表單的所有前后端代碼,全部由代碼生成器生成,並支持並后端業務代碼擴展,查詢字段、類型(下拉框、日期、TextArea等)、所在行與列都由代碼生成器完成,不需要寫任何代碼
5、單表新建、編輯
單表新建、編輯所有前后端代碼,全部由代碼生成器生成,並支持並后端業務代碼擴展,新建、編輯字段、類型(下拉框、日期、TextArea等)、所在行與列、字段是否只讀、標簽顯示的長度等都由代碼生成器完成,不需要寫任何代碼
6、主從表新建、編輯
主從表新建、編輯所有前后端代碼,全部由代碼生成器生成,並支持並后端業務代碼擴展,新建、編輯從表配置、字段、類型(下拉框、日期、TextArea等)、所在行與列、字段是否只讀、標簽顯示的長度等都由代碼生成器完成,不需要寫任何代碼
7、單列、多列Form表單
單列、多列Form表單,已封裝成組件,並且支持組件擴展。可配置顯示的列的數量、是否只讀、列的數據類型(日期、下拉框、TextArea、列寬、自動綁定數據源、圖片上傳等), 這些只需要配置JSON格式即可使用
8、可配置的Table(自動/手動加載table數據、自動綁定數據源、編輯功能)
單列、多列Form表單,已封裝成組件,並且支持組件擴展。可配置顯示的列的數量、是否只讀、列的數據類型(日期、下拉框、TextArea、列寬、自動綁定數據源、圖片上傳等), 這些只需要配置JSON格式即可使用
從后台加載數據、自動綁定數據
可編輯的table,手動綁定數據、自動綁定數據源
表單與table混合使用
9、excel導入
excel導入整個頁面都由代碼生成器生成,導入的字段、字段是否必填,下載模板也由代碼生成器上配置(自己根據實際需要決定是否采用此方法),導入時會驗證是否為空與數據的合法性,邏輯校驗自己實現擴展方法即可
10、H5開發
H5只是做了一個簡單的Demo,如果你有H5開發經驗,請忽略,如果你沒有H5開發經驗,http://132.232.2.109/app/guide
11、權限分配
目前只實現了對用戶的角色的Action進行權限分配
12、菜單管理
默認8種權限,可自行定義其他權限(代碼生成器完后,直接在菜單上配置url(url路徑為自動生成前端的router->path,從此處復制過過即可))
13、個人中心
個人中心目前只開發了頁面與修改密碼,其他功能自行根據需要實現
14、前端、后台業務代碼動態擴展
框架提供了前台后端擴展方法與屬性,只需要根據自己的業務實現擴展業務。后台大部分都采用的委托擴展方法,這里只截了一張圖前端數據加載事件的擴展方法,前后台完整擴展參考Demo:http://132.232.2.109/SellOrder
15、代碼生成器
代碼生成器提供了20多種可配置的屬性,可靈活配置顯示、查詢、編輯、導入、導出、主從關系等功能點擊看代碼生成器文檔
還有角色管理、日志管理、數據源管理、其他組件、后台代碼等功能就不再介紹了。
七、總結
此框架由代碼生成器完成了大部分工作能極大減少代碼量,並支持前台端代碼的擴展。
如果你對前后端分離開發的方式或H5開發有興趣,那么希望此框架對能你有所幫助!
如果你覺得框架對你有用,幫忙點個星,非常感謝!
-
Demo地址:http://132.232.2.109 帳號:admin666密碼:123456(本地超級管理員帳號:admin密碼123456)
-
GitHub地址:https://github.com/cq-panda/Vue.NetCore.git
-
如果你需要Quartz.Net做定時任務管理,你可以試試這個:https://github.com/cq-panda/Quartz.NetUI
(站點與MySql部署在同一個1G1核1M帶寬的服務Centos服務上,訪問可能會出現延遲現象)