.NET 8 + Vue 3 极简 RABC 权限管理系统
前言
在日常工作中,几乎每家公司都需要一个后台管理系统来处理各种任务。为了帮助大家快速搭建这样一个系统,给大家介绍一个基于最新技术 .NET 8 和前端框架 Vue 3 实现的极简 RABC(基于角色的访问控制)权限管理系统。
该系统后端采用经过精心精简的 ABP框架,前端则使用了 vue-pure-admin 模板和强大的 vxe-table表格框架,为二次开发提供最简洁、最高效的解决方案。
这个系统不仅易于理解和使用,而且它的模块化设计能够快速地进行定制和扩展,满足不同业务场景的需求。
系统适合有快速搭建后台管理系统的需求,项目从0到1,源码持续更新!特适合、刚开始接触 .NET 8+ Vue 3 项目的初学者。
项目介绍
基于.NET 8 + Vue 3+ ABP + SqlSugar + MySQL 实现的高性能的、极简的、前后端分离的、RABC 权限后台管理系统。主要包括用户管理、角色管理、组织机构管理、字典管理、配置管理、日志管理、文件管理、工作流管理等15 种核心功能。
PurestAdmin 是一款前后端分离的基于 "RBAC"(基于角色的访问控制)权限管理的后台管理系统。目标为大、中、小型项目提供一个快速二次开发的模板,本项目不做任何业务型的功能,尽量做到下载即用,方便广大的开发者进行快速业务开发,无需再为搭建项目框架而烦恼。
本项目突破了传统的 RBAC 构思,不再依赖后端配置前端的菜单路径,真正实现了前后端分离。此外,我们重新设计了 token 的刷新机制,实现了单 token 无感知刷新,提升了用户体验。

项目结构
1、 后端接口(Api)
- 使用 .NET 8 开发,在 ABP 框架的基础上进行了精简和改良,只保留了核心功能,并重写了部分 ABP 的功能。
- 采用了 SqlSugar 替代传统的 EF Core,提高了效率并使使用更加便捷。
2、Vue 客户端(client-vue )
- 采用了高质量前端项目
vue-pure-admin的精简版pure-admin-thin。 - 额外集成了功能强大的
vxe-table及其内置的其他组件,提升了用户体验和开发效率。
3、WPF 客户端(client-wpf )
- 使用 MVVM 模式的框架 Prism,该框架在 WPF 用户中非常受欢迎。
- 引入了 Rubyer-WPF 主题和控件包,增强了界面的友好度。
- 对 HTTP 请求进行了封装,使用了 restful 格式的 Flurl,让网络请求更加便捷。
4、 关系模型(relationship-model)
- 包含数据库关系模型图,基于 PowerDesigner 设计的 PDM 图形。
- 提供了对应的表结构初始化 SQL 语句。
5、项目效果图(screenshot )
- 展示了项目的实际运行效果和界面设计。

设计思路
1、服务端
- 关注点分离:服务端不再关心前端的具体实现细节,而是专注于功能实现和接口开放。
- 权限控制:通过“功能管理”模块,控制用户调用接口的权限,确保只有授权用户才能访问相应的功能。
2、客户端
- 动态路由:客户端无需与服务端约定具体的路由信息,而是根据服务端返回的功能编码动态生成路由。
项目说明
1、完成功能
- 登陆登录以及权限验证
- 系统管理(组织架构、用户、角色、权限、功能、字典、配置等)
- 工作流程(表单设计、流程设计、待办事项等)
- WPF 版本仅完成了框架的构造以及登录等基本功能(由于prism也收费啦,所以后续不再进行开发了),如果您有兴趣,请联系我。
- 工作流部分只提供了比较简单的入门级示例。请根据需求自行二开。
2、后续内容
- 数据库替换为 Sqlite
- MAUI 客户端
演示地址
访问地址 http://www.purestadmin.com
应用服务器在国外,数据库服务器在国内,可能查询数据会有略微延迟。并非项目本身的问题。
1、登录页面

2、系统首页

3、系统管理

4、工作流程


项目地址
Github:https://github.com/dymproject/purest-adminGitee:https://gitee.com/dymproject/purest-admin
文档地址:http://docs.purestadmin.com
提供本项目的结构说明以及再次开发中需要的注意事项,记录常见问题以及相关处理方式。

最后
如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。
也可以加入微信公众号[DotNet技术匠] 社区,与其他热爱技术的同行一起交流心得,共同成长!

.NET 8 + Vue 3 极简 RABC 权限管理系统的更多相关文章
- [ABP开源项目]--vue+vuex+vue-router+EF的权限管理系统
好久没写文字了,当然大家也不期待嘛,反正看代码就行了. 演示网站 首先说下这个项目吧. 如标题一样是基于VUE+.NET开发的框架,也是群友一直吼吼吼要一个vue版本的ABP框架. 我们先来看看首页吧 ...
- Resty 一款极简的restful轻量级的web框架
https://github.com/Dreampie/Resty Resty 一款极简的restful轻量级的web框架 开发文档 如果你还不是很了解restful,或者认为restful只是一种规 ...
- .NET Core实战项目之CMS 第七章 设计篇-用户权限极简设计全过程
写在前面 这篇我们对用户权限进行极简设计并保留其扩展性.首先很感谢大家的阅读,前面六章我带着大家快速入门了ASP.NET Core.ASP.NET Core的启动过程源码解析及配置文件的加载过程源码解 ...
- 【转】手摸手,带你用vue撸后台 系列四(vueAdmin 一个极简的后台基础模板)
前言 做这个 vueAdmin-template 的主要原因是: vue-element-admin 这个项目的初衷是一个vue的管理后台集成方案,把平时用到的一些组件或者经验分享给大家,同时它也在不 ...
- 极简Vue的异步组件函数
export default new Router({ routes: [ { path: '/live', name: 'live', component: () => import('@/v ...
- Vue.js 入门:从零开始做一个极简 To-Do 应用
Vue.js 入门:从零开始做一个极简 To-Do 应用 写作时间:2019-12-10版本信息:Vue.js 2.6.10官网文档:https://cn.vuejs.org/ 前言 学习 Vue ...
- .NET开源项目 QuarkDoc 一款自带极简主义属性的文档管理系统
有些话说在前头 因为公司产品业务重构且功能拆分组件化,往后会有很多的接口文档需要留存,所以急需一款文档管理系统.当时选型要求3点: 1.不能是云平台上的Saas服务,整个系统都要在自己公司部署维护(数 ...
- 在Web应用中接入微信支付的流程之极简清晰版
在Web应用中接入微信支付的流程之极简清晰版 背景: 在Web应用中接入微信支付,我以为只是调用几个API稍作调试即可. 没想到微信的API和官方文档里隐坑无数,致我抱着怀疑人生的心情悲愤踩遍了丫们布 ...
- 在Web应用中接入微信支付的流程之极简清晰版 (转)
在Web应用中接入微信支付的流程之极简清晰版 背景: 在Web应用中接入微信支付,我以为只是调用几个API稍作调试即可. 没想到微信的API和官方文档里隐坑无数,致我抱着怀疑人生的心情悲愤踩遍了丫们布 ...
- php 极简框架ES发布(代码总和不到 400 行)
ES 框架简介 ES 是一款 极简,灵活, 高性能,扩建性强 的php 框架. 未开源之前在商业公司 经历数年,数个高并发网站 实践使用! 框架结构 整个框架核心四个文件,所有文件加起来放在一起总行数 ...
随机推荐
- Android 8.0 开机时间优化
Android 8.0 开机时间优化 背景 在嵌入式行业中,有些搭载 了Android系统的设备由于 开机时间 过长而导致无法被接受. 介绍 启动时间是系统性能的重要组成部分,因为用户必须等待启动完成 ...
- 嵌入式知识分享——GDB程序调试方法说明
前 言 本指导文档适用开发环境: Windows开发环境:Windows 7 64bit.Windows 10 64bit Linux开发环境:Ubuntu 18.04.4 64bit 虚拟机:VM ...
- Linux上快速安装 RabbitMQ
1.默认安装最新版,安装erlang apt-get install erlang 2.安装最新版 rabbitmq sudo apt-get update sudo apt-get install ...
- 【ClickHouse】6:clickhouse集群高可用
背景介绍: 有四台CentOS7服务器安装了ClickHouse HostName IP 安装程序 程序端口 shard(分片) replica(备份) centf8118.sharding1.db ...
- yb课堂之个人信息接口开发 《十三》
根据token从查询个人信息接口开发 直接解密token,获取个人信息 通过token解密查询数据库获取个人信息 UserController.java package net.ybclass.onl ...
- MySql 数据库、数据表操作
数据库操作 创建数据库 语法 语法一:create database 数据库名 语法二:create database 数据库名 character set 字符集; 查看数据库 语法 查看数据库服务 ...
- .NET周刊【7月第2期 2024-07-14】
国内文章 开源GTKSystem.Windows.Forms框架让C# winform支持跨平台运行 https://www.cnblogs.com/easywebfactory/p/18289178 ...
- mysql:Windows修改MySQL数据库密码(修改或忘记密码)
今天练习远程访问数据库时,为了方便访问,就想着把数据库密码改为统一的,以后我们也会经常遇到MySQL需要修改密码的情况,比如密码太简单.忘记密码等等.在这里我就借鉴其他人的方法总结几种修改MySQL密 ...
- IPv6、双栈与隧道
双栈策略 实现IPv6结点与IPv4结点互通的最直接的方式是在IPv6结点中加入IPv4协议栈.具有双协议栈的结点称作"IPv6/v4结点",这些结点既可以收发IPv4分组,也可以 ...
- django 设置外键的时候,related_name的值大写还是小写,规则怎样
django 设置外键的时候,related_name的值大写还是小写,规则怎样 在Django中,related_name参数用于定义反向关系的名称,即通过外键字段反向查询关联模型的对象.relat ...