Uwl.Admin開源框架(一)

一、前言

  做爲一個忠實的軟粉,一直期待微軟出跨平臺,一直在等待.Net Core,由於剛畢業對於.Net的不少東西不是很熟知,就開始了.Net Core的摸索,一路上坎坎坷坷,對於新技術一直很期待,就開始漫長的.Net Core的學習和編寫開源框架,但願本身寫的文章能給.Net Core社區貢獻一下本身的坎坷路,這一路所遇到的問題磕磕絆絆,各類問題層出不窮,可是我認爲沒有解決不了的問題,只有你想不想去作,擺好本身的心態,作好一個目標,你就會成功。html

  本系列文章只是對框架現有的一些技術作一個簡單說明或者是引入,只是一個拋磚引玉的做用,第一次寫博客但願各路大神多多指導。前端

二、框架簡介

  *、Uwl.Admin開源框架技術選擇的是.Net Core2.2版本,ORM選擇的是EF Core,(我的偏向喜歡用EF Core),前端選擇的是目前主流技術Vue.js+Iview UI框架;ios

  *、框架功能:1)用戶管理;2)菜單管理;3)組織機構;4)按鈕管理;5)角色分配權限;6)角色管理;7)定時任務;8)我的資料;9)Excel導入、導出;10)用戶分配角色;11)SignalR即時通信git

  *、框架使用倉儲模式用來管理數據鏈接層,緩存使用的是Redis,Redis連接使用單例模式來管理;倉儲內由工做單元來管理數事務上下文;github

  *、框架同時還封裝了RabbitMQ指定隊列模式,目前沒有功能實現後期擴展,若想使用RabbitMQ請先配置RabbitMQ;我這裏使用的是Windows服務器    請看文章   RabbitMQ消息隊列入門(一)
數據庫

二、技術簡介

後端技術編程

  *、由於想單純搭建先後端分離,所以就選用的API;axios

  *、Async和Await 異步編程後端

  *、Repository + Service 倉儲模式編程跨域

  *、Swagger 先後端文檔說明,基於RESTful風格編寫接口

  *、Cors 簡單的跨域解決方案

  *、JWT自定義策略受權權限驗證

  *、依賴注入選擇的是官方自帶的DI注入,沒有使用第三方框架,ORM使用EF Core,數據庫使用的是Sql server,(後期會擴展MySql版本);

  *、登陸認證方式使用JWT認證方式,後臺接口使用SwaggerUI展現,角色權限使用  自定義權限處理器PermissionHandler 繼承與微軟官方 IAuthorizationRequirement;

  *、Excel導入導出使用的是Epplus第三方框架,導入導出只須要配置Attribute特性就好,不須要在本身寫列名;導出只支持List導出,暫時不支持Datatable;

  *、Redis 輕量級分佈式緩存

  *、Vue 本地代理跨域方案,Nginx跨域代理

  *、定時任務使用QuartzNet第三方任務框架,QuartzNet任務框架能夠精確到分秒;(還有其餘任務框架、hangfire ),定時任務管理中心已經封裝完畢,只須要配置任務到對應的表中而且啓動任務就能夠直接用;QuartzNet第三方任務框架文獻參考(基於QuartzNet任務管理系統

數據庫

  Sql Server、 EF Core ORM框架、CodeFirst、AutoMapper 自動對象映射、Linq To Sql \ lambda表達式樹查詢;

前端技術

  *、使用Vue 2.0 框架全家桶  +Iview UI框架 ,接口請求axios\狀態管理使用Vuex;Vue參考文獻(老張的博客);

  *、Iview UI框架基於Vue2.x的組件庫;請查看(IviewUI官網);

  *、前端權限按鈕控制使用動態渲染的方式來作,若是用戶有這個權限則顯示該按鈕沒有這個權限則不渲染按鈕;

三、項目地址

  *、.NET CORE 源碼:https://github.com/GeorGeWzw/Uwl.Admin.Core

  *、前端框架代碼:https://github.com/GeorGeWzw/Vue.Uwl.Admin

三、致謝

  *、感謝有幾位朋友支持、以及技術支持 特別感謝老張的博客、Psyche丶殘雲、深圳-果、大黃瓜 等各位大佬的技術默默支持;才讓我有了繼續前行下去的動力,很是感謝各位大佬給的不少建議。

  *、 下一篇我會寫QuartzNet控制中心的實現

相關文章
相關標籤/搜索