Uwl.Admin开源框架(一)
1、前言
作为一个忠实的软粉,一直期待微软出跨平台,一直在等待.Net Core,因为刚毕业对于.Net的很多东西不是很熟知,就开始了.Net Core的摸索,一路上坎坎坷坷,对于新技术一直很期待,就开始漫长的.Net Core的学习和编写开源框架,希望自己写的文章能给.Net Core社区贡献一下自己的坎坷路,这一路所遇到的问题磕磕绊绊,各种问题层出不穷,但是我认为没有解决不了的问题,只有你想不想去做,摆好自己的心态,做好一个目标,你就会成功。
本系列文章只是对框架现有的一些技术做一个简单说明或者是引入,只是一个抛砖引玉的作用,第一次写博客希望各路大神多多指导。
2、框架简介
*、Uwl.Admin开源框架技术选择的是.Net Core2.2版本,ORM选择的是EF Core,(个人偏向喜欢用EF Core),前端选择的是目前主流技术Vue.js+Iview UI框架;
*、框架功能:1)用户管理;2)菜单管理;3)组织机构;4)按钮管理;5)角色分配权限;6)角色管理;7)定时任务;8)个人资料;9)Excel导入、导出;10)用户分配角色;11)SignalR即时通讯
*、框架使用仓储模式用来管理数据连接层,缓存使用的是Redis,Redis链接使用单例模式来管理;仓储内由工作单元来管理数事务上下文;
*、框架同时还封装了RabbitMQ指定队列模式,目前没有功能实现后期扩展,若想使用RabbitMQ请先配置RabbitMQ;我这里使用的是Windows服务器 请看文章 RabbitMQ消息队列入门(一)
2、技术简介
后端技术
*、因为想单纯搭建前后端分离,因此就选用的API;
*、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官网);
*、前端权限按钮控制使用动态渲染的方式来做,如果用户有这个权限则显示该按钮没有这个权限则不渲染按钮;
3、项目地址
*、.NET CORE 源码:https://github.com/GeorGeWzw/Uwl.Admin.Core
*、前端框架代码:https://github.com/GeorGeWzw/Vue.Uwl.Admin
3、致谢
*、感谢有几位朋友支持、以及技术支持 特别感谢老张的博客、Psyche丶残云、深圳-果、大黄瓜 等各位大佬的技术默默支持;才让我有了继续前行下去的动力,非常感谢各位大佬给的很多建议。
*、 下一篇我会写QuartzNet控制中心的实现
Uwl.Admin开源框架(一)的更多相关文章
- Uwl.Admin开源框架(二)
Uwl.Admin开源框架基于QuartzNet定时任务模块的实现 Quartz.NET官网地址:https://www.quartz-scheduler.net/ Quartz.NET文档地址:ht ...
- Uwl.Admin.Core开源框架(三) 使用RabbitMQ
Uwl.Admin.Core中使用RabbitMQ消息队列: 本文负责讲解RabbitMQ的使用 Uwl.Admin.Core使用的技术有: *.Async和Await 异步编程 *.Reposito ...
- Uwl.Admin.Core开源框架(二) 使用QuartzNet
Uwl.Admin.Core中使用QuartzNet定时任务模块: 本文负责讲解RabbitMQ的使用 Uwl.Admin.Core使用的技术有: *.Async和Await 异步编程 *.Repos ...
- Magicodes.Admin.Core开源框架总体介绍
框架说明 Magicodes.Admin.Core框架在ABP以及ASP.NET ZERO的基础上进行了封装和完善,目前基于.NET Core 2.0+(Framework版本),由于部分组件在.NE ...
- 介绍一个非常好用的跨平台C++开源框架:openFrameworks
介绍一个非常好用的跨平台C++开源框架:openFrameworks 简介 首先需要说明的一点是: openFrameworks 设计的初衷不是为计算机专业人士准备的, 而是为艺术专业人士准备的, 就 ...
- Pyhton开源框架(加强版)
info:Djangourl:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 ...
- Python开源框架
info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...
- 【开源推荐】AllJoyn:打造全球物联网的通用开源框架
摘要:随着智能设备的发展,物联网逐渐进入了人们的生活.据预测,未来几乎一切东西(超过500亿台设备)都可以互联.高通公司发布了开源项目AllJoyn,这是一个能够使连接设备间进行互操作的通用软件框架和 ...
- [转]开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo
热衷于开源框架探索的我发现ASP.NET MVC与jQuery easyUI的组合很给力.由于原先一直受Ext JS框架的licence所苦恼,于是痛下决心寻找一个完全免费的js框架——easyUI. ...
随机推荐
- C# - ZIP 压缩流
C# - ZIP 压缩流 参考资料 https://docs.microsoft.com/en-us/dotnet/api/system.io.compression.ziparchive?view= ...
- oracle数据库的存储原理
表空间,oracle逻缉存储结构,表空间下包含一个或者多个物理的文件存储.所有用户对象存放在表空间中.与系统有关的对象存放在系统表空间中. 数据库的作用就是实现对数据的管理和查询.任何一个数据库系统, ...
- 到达型01背包---P1504 积木城堡
P1504 积木城堡 题解 到达型01背包 对于每一组城堡,它可以到达一些高度 但是我们要求的是所有背包可以到达的公共高度的最大值 f[ i ] 表示对于一组城堡,能否到达高度 j ,然后我们跑 n ...
- python 设计模式之中介者模式
#先啰嗦一下 至少半个多月的样子没写博客了,月初去了趟黄山,赏了美景,自然没时间也没条件敲博客了,一个多星期就这么过去了.返回深圳后,工作积压了一堆,然后白天就马不停蹄的忙工作,晚上回家伺候小娃,又想 ...
- JPG:文件格式系列科普之.JPEG/.JPG(转)
当我们在互联网上浏览内容时,总会看到各种各样的图片,比如在你刷IT之家时,所看到的绝大部分图片都是JPG格式的,这种图片格式之所以在互联网上广受欢迎,是因为相比于PNG.GIF格式,它的体积相对较小, ...
- windows通过企业内部授权服务器激活方法
OFFICE KMS 激活方法: # 进入office安装目录 cscript ospp.vbs /sethst:kms.domain.com #设置KMS服务器 cscript ospp.vbs / ...
- 讲sql注入原理的 这篇不错(有空可以看看)
我们围绕以下几个方面来看这个问题: 1.什么是sql注入? 2.为什么要sql注入? 3.怎样sql注入? 1.什么是sql注入? 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或 ...
- pycharm连接linux创建django工程
windows中安装最新版pycharm--2018年10月的版本 点击创建工程,看下图: C:\Users\Lenovo\PycharmProjects\untitled4 这个路径不要动,一动就出 ...
- 好工具必须SHOW出来! NGFW下一代防火墙性能评估利器:Safire !
2019-09-26 00:05:54 今天先起个头,后面陆续完善 NGFW下一代防火墙是什么? 我们要关注NGFW下一代防火墙的哪些指标? 为什么说NGFW的性能不好评估?现有的评估手段工具介绍? ...
- XMemcached的基本使用
XMemcached是memcached的一个java客户端,基于java nio,支持memcached的所有协议.本文简要介绍XMemcached的基本使用. 一.添加依赖 <depende ...