通用后台权限管理系统、快速开发框架(基于C#12/.NET8、Vue3/Vite、Element Plus等现代技术构建,具有十分整洁、优雅的编码规范)
http://na.yaopy.com (演示站点仅300kbps带宽,访问较慢)
docker run -p 8080:8080 nsnail/netadmin
- 后端
- 检查dotnet-sdk版本>=8.0.0
dotnet --list-sdks # 下载 dotnet https://dotnet.microsoft.com/zh-cn/download/dotnet
- 克隆代码仓库
git clone https://github.com/nsnail/NetAdmin.git cd ./NetAdmin # 下载 git https://git-scm.com/downloads
- 确保本机redis处于运行状态
redis-cli # 下载 redis for windows https://github.com/redis-windows/redis-windows/releases # 下载 redis for linux/mac https://redis.io/download
- 运行后端WebApi
dotnet run --project ./src/backend/NetAdmin.BizServer.Host/NetAdmin.BizServer.Host.csproj --urls http://[::]:5010 -is
- 体验WebApi程序
- 浏览器打开 http://localhost:5010 ,将看到Swagger(Knife4jUI)界面
- 前端
- 检查nodejs版本>=20
node -v # 下载 nodejs https://nodejs.org/en/download
- 安装npm依赖包
cd ./src/frontend/admin npm install
- 运行前端项目
npm run dev
- 体验前端程序
- 浏览器打开 http://localhost:5020 ,将看到管理界面(默认用户名:root,密码:1234qwer)
+---.template.config # dotnet 项目模板配置目录
+---assets # 程序运行需要的资源文件目录
+---dist # 程序编译与分发的二进制文件目录
+---docs # 项目文档目录
+---refs # 引用的第三方项目仓库目录
+---src # 项目源文件目录
flowchart TD
H["NetAdmin.Host\n公共主机层\n(.Net自托管主机程序)\n(输入输出格式化)\n(数据校验、鉴权)\n(...所有HTTP管道过滤器中间件)"] --> C["NetAdmin.Cache\n公共缓存层\n(基于Redis或MemoryCache的缓存策略实现)"]
C --> A["NetAdmin.Application\n公共业务逻辑层\n(内部服务增删改查)\n(外部服务增删改查)\n(...所有业务用例的计算与组合逻辑的模块化)"]
A --> D["NetAdmin.Domain\n数据实体层\n(数据库关系实体映射)\n(DTO数据传输对象)\n(...所有数据模型的抽象与封装)"]
D --> I["NetAdmin.Infrastructure\n基础设施层\n(第三方组件和Nuget包引用)\n(公共构建和程序运行配置)\n(公共常量枚举异常定义)\n(全球化化和多语言)\n(...所有公共Utility工具)"]
XH["NetAdmin.XXX.Host\n(WebApi)"]-->H
XS["NetAdmin.XXXService\n(常驻内存服务)"]-->H
XS["NetAdmin.XXXService\n(常驻内存服务)"]-->XC
XC["NetAdmin.XXX.Cache\n(缓存层实例)"]-->C
XA["NetAdmin.XXX.Application\n(业务逻辑层实例)"]-->A
XH-->XC
XC-->XA
语言 | 集成领域 | 开源库 |
---|---|---|
C# | Web基础框架 | ASP.NET Core |
C# | 快速开发脚手架 | Furion |
C# | 数据库关系映射 | FreeSql |
C# | 代码质量检查 | Roslynator.Analyzers | SonarAnalyzer.CSharp | StyleCop.Analyzers |
C# | 单元测试框架 | xunit | coverlet.collector |
C# | 分布式锁 | RedLock.net |
C# | 控制台终端界面库 | Spectre.Console |
C# | 扩展函数库 | NSExt |
C# | 图形处理库 | SixLabors.ImageSharp |
C# | 文件对象存储 | Minio |
C# | 性能监控采集 | prometheus-net.AspNetCore |
C# | 雪花ID生成器 | Yitter.IdGenerator |
C# | 自动化版本管理 | MinVer |
C# | JavaScript引擎 | MsieJavaScriptEngine |
C# | WebApi图形界面 | IGeekFan.AspNetCore.Knife4jUI |
TypeScript | SPA基础框架 | Vue |
TypeScript | 前端构建工具 | Vite |
TypeScript | UI控件库 | Element Plus |
TypeScript | CSS解析器 | Sass |
TypeScript | 图表和数据可视化 | ECharts |
JavaScript | 后台管理界面 | SCUI |
JavaScript | HTTP请求库 | Axios |
JavaScript | JavaScript解析器 | Terser |
JavaScript | 代码质量检查 | ESLint |
JavaScript | 代码格式化工具 | Prettier |
JavaScript | 标准加密库 | crypto-js |