realyrare / ShenNiusFramework

基于Asp.NetCore框架开发的权限管理、CMS管理、商城管理等模块。代码方面追求“简单”,“高效”,“实用”,总之秉承大道至简的原则开发,坚持业务模块最低复杂度复用,只要会C#,再会点Asp.NetCore基础知识,极易上手。适合小白入门进阶,更适用(实用)老手上路干活。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ShenNius.Framework

如果对您有帮助,点击右上角⭐Star⭐关注 ,感谢支持开源!

介绍

基于Asp.NetCore的开发框架,目前已开发完权限管理模块,CMS模块、商城模块。特别适合中小型项目快速开发,对CRUD API接口抽象到上层controller,只需要建立对应的实体,即可生成某张表的增删改查接口。

所有的代码坚持" Don't repeat yourself "。坚决反对" 简单的事情复杂干 "," 大量代码在应用层过度层层封装 ",反对" 过度设计 "的原则下进行开发。

如果你有这个习惯,并且也想找一款迷你型、上手快,不用学习太多东西的框架,那么它就适合你,只要你会dotnet core,几乎没有学习成本。

分支概况

master分支为asp.netcore3.1单体分支:git clone -b master https://gitee.com/shenniu_code_group/shen-nius.-modularity.git

.net6.0分支为asp.netcore6.0单体分支:git clone -b .net6.0 https://gitee.com/shenniu_code_group/shen-nius.-modularity.git

page5.0分支为asp.netcore5.0单体前后端分离分支:git clone -b page5.0 https://gitee.com/shenniu_code_group/shen-nius.-modularity.git 。 注:该分支不再维护,适合大家学习二开使用。

模块化的项目地址:基于dotNetCore基础之上开发的模块化框架

特别申明

注意:该项目新功能的迭代今后我会放在模块化分支上面,单体新功能的迭代一般可能会在最新的asp.netcore版本上开发。老版本新功能有偿服务!

软件架构

输入图片说明 整体框架分为服务层、基础设施层,实体层,展现层。

很多人都使用过三层架构,该架构是从三层架构上面简化而来,去掉了以前三层架构中的数据访问层,配合顺手的ORM,不管开发API还是mvc效率和性能都是杠杠的。

以后整体架构会向DDD发展,逐步缓慢的演进,为解决业务需求会把实体层的贫血模型更改为充血模型,这是当下的任务。

使用技术

  1. API框架:dotNetCore
  2. ORM:SqlSugarCore
  3. 缓存:MemoryCache和redis一键任意切换
  4. 日志管理:Nlog
  5. 工具类:Aes加密、Md5加密、RSA加密、Des加密
  6. token:Json Web Token
  7. 实体验证:FluentValidation
  8. 实体映射:AutoMapper
  9. 数据库使用mysql(后面会做sqlserver等其他数据库的兼容)
  10. 支持跨平台部署 linux/windows
  11. 支持AOP缓存,使用AspectCore,缓存可做到Memarycache和redis一键切换
  12. 支持AOP事务,服务层和控制器都可以打上特性标签使用
  13. 对多租户使用Filter,不管是添加还是更新、查询即可自动赋值
  14. 支持七牛云和本地图片一键切换使用上传
  15. 对于单表的增删改查,在控制器内做了封装,有新的业务按约定建立对应的CRUD实体,一套API自动完成
  16. 支持站群管理
  17. 支持MediatR进程内通讯解耦(目前已取消使用,因为只支持进程内通讯)

安装教程

  1. git clone -b master https://gitee.com/shenniu_code_group/shen-nius.-modularity.git
  2. 在mysql上创建数据库shenniusdb,然后执行源码doc文件夹下的sql脚本语句,以最近日期为准。doc文件夹里面数据库字典文档,word、CHM、html格式的都有。
  3. ShenNius.Mvc.Admin(前后端不分离)和ShenNius.API.Hosting(前后端分离 API)可以配置你要启动的appsettings.json文件信息。 4、 使用过程中有什么问题欢迎提issues,基本都会第一时间解决。

使用说明

  1. ShenNius.Share.Infrastructure 基础设施、里面包含常用的扩展方法、静态类。
  2. ShenNius.Share.Models 实体层、里面包括Dto验证、配置类。
  3. ShenNius.Share.Domain 服务层、业务逻辑基本都在这个里面、里面包含了数据访问操作。
  4. ShenNius.Admin.API 有对服务层CRUD的抽象处理,模块只需按规则建立对应的CRUD实体,API接口自动生成。
  5. ShenNius.API.Hosting 前后端分离的API。
  6. ShenNius.Mvc.Admin 基于layui的后台管理包含CMS、商城,权限管理。

效果图

权限管理模块

CMS系统模块

商城系统模块

入群交流

QQ群:dotnet根据地878303823

微信群:喜欢微信交流的扫描下面我的个人二维码,邀请进群。

参与贡献

  1. Fork 本仓库
  2. 新建 Feat_xxx 分支
  3. 提交代码
  4. 新建 Pull Request

About

基于Asp.NetCore框架开发的权限管理、CMS管理、商城管理等模块。代码方面追求“简单”,“高效”,“实用”,总之秉承大道至简的原则开发,坚持业务模块最低复杂度复用,只要会C#,再会点Asp.NetCore基础知识,极易上手。适合小白入门进阶,更适用(实用)老手上路干活。

License:MIT License


Languages

Language:JavaScript 36.9%Language:C# 30.9%Language:HTML 19.0%Language:SCSS 4.6%Language:Less 4.5%Language:CSS 4.2%Language:Dockerfile 0.0%