全宇宙首个.NET5+Vue.js前后端分离以及业务模块化快速开发框架【NetModular】发布~
最近.Net圈子很热闹啊,我也来凑凑,今天中午耗时长达半小时,把NetModular升级到了.NET5,详情查看分支https://github.com/iamoldli/NetModular/tree/feature_net5

NetModular
NetModular是什么
NetModular 是一款为中小型企业而生的基于.Net Core平台的业务模块化快速开发解决方案,最终目的是能够让中小团队快速搭建公司内部开发平台。
NetModular有哪些特点
1、模块化
以模块化为思想,以业务领域为理念,以包管理(nuget\npm)为基础,充分解耦业务功能,使业务最大化的得到复用,极大减少重复开发时间,结合在线代码生成器,让您“一天一模块,三天一系统”不再是梦想。
2、内置ORM
基于Dapper封装的轻量级ORM,支持多种数据库自由切换,内置CRUD、软硬删除、Lamdba表达式查询、多表连接查询、分组查询、跨库连接查询、日期分库分表以及自定义分表策略,提供多个常用实体基类和对应功能,如自动设置创建人、创建日期、修改人、修改日期、删除人、删除日期等功能。
3、多租户
得益于自己扩展的ORM,非常简单的就实现了数据共享模式的多租户功能
4、简单易用
完善的基础设施,包括简单易用高效的ORM、日志组件(Serilog)、对象映射(AutoMapper)、Api文档(Swagger)、缓存(MemoryCachge/Redis)、强类型验证(FluentValidation)、消息队列(RabbitMQ)、任务调度(Quartz)等功能模块,用什么注入即可。
5、不写文档
当然,NetModular最大的特点就是作者的良苦用心,为了能够让大家多多阅读代码,坚持不完善文档的精神~
后端框架结构说明
| 框架模块 | 说明 | 版本 |
|---|---|---|
| 00_Host | 主机库 | |
| 01_Utils | 通用基础库 | |
| 02_Data | 轻量级ORM库(基于 Dapper 扩展) | |
| 03_Logging | 日志库(基于 Serilog 扩展) | |
| 04_Mapper | 对象映射库(基于 AutoMapper 扩展) | |
| 05_Swagger | 接口文档库(基于 Swashbuckle 扩展) | |
| 06_Cache | 缓存库,支持内存缓存和Redis | |
| 07_Validation | 模型验证库(基于 FluentValidation 扩展) | |
| 08_Auth | 身份认证库,已实现JWT认证方式 | |
| 09_Module | 业务模块化核心库 | |
| 10_MQ | 消息通讯库,实现对RabbitMQ的封装 | |
| 11_Quartz | 基于 Quartz.Net 封装的任务调度库 | |
| 12_Excel | Excel扩展库 | |
| 13_Config | 通用配置库 | |
| 14_Pdf | PDF扩展库 | |
| 15_MQTT | MQTT扩展库(未实现) | |
| 16_OSS | 对象存储库,内含七牛云SDK的Core版本 |
开发环境
开发工具
后端
.Net Core 3.1、Dapper、Serilog、AutoMapper、FluentValidation、Swagger、RabbitMQ、Redis、EPPlus
前端
前端框架 NetModular.UI
前端采用Vue.js全家桶+Element UI开发,也是基于模块化思想设计,源码不在本仓库,请移步 NetModular.UI
前端皮肤
前端支持自定义皮肤功能,框架本身提供了两套皮肤,其中一套已经内置作为默认皮肤,另外一套需要单独安装,源码如下:
| 编码 | 版本 | 仓库地址 |
|---|---|---|
| Classics | NetModular.Skins.Classics |
演示地址
本仓库只包含后端框架代码,为了方便大家调试运行,同时包含了权限管理模块的代码,但是演示地址是把现有的几个模块整合后发布的,所以当你运行本仓库发现与线上不一样的时候,请下载演示源码,并且需要自己配置菜单~
演示地址:https://demo.17mkh.com/
账 户:admin
密 码: admin
演示源码:https://github.com/iamoldli/NetModular.Demo
官方文档
文档地址: https://docs.17mkh.com
文档项目的源码请移步: https://github.com/iamoldli/NetModular.Docs
模块列表
本仓库只包含基础框架以及权限管理(Admin)模块代码,其它模块请点击以下链接查看~
| 编号 | 编码 | 说明 | 版本 | 仓库地址 |
|---|---|---|---|---|
| 00 | Admin | 权限管理 | 本仓库 | |
| 01 | Common | 通用模块 | NetModular.Module.Common | |
| 02 | CodeGenerator | 模块创建(又名代码生成器) | NetModular.Module.Common | |
| 03 | Quartz | 任务调度 | NetModular.Module.Quartz | |
| 04 | PersonnelFiles | 人事档案 | NetModular.Module.PersonnelFiles |
技术交流
QQ 群:点击加群 903210423

全宇宙首个.NET5+Vue.js前后端分离以及业务模块化快速开发框架【NetModular】发布~的更多相关文章
- python django框架+vue.js前后端分离
本文用于学习django+vue.js实现web前后端分离协作开发.以一个添加和删除数据库书籍应用为实例. django框架官方地址:https://www.djangoproject.com/ vu ...
- Tornado + vue.js 前后端分离运行脚本
shell脚本部分: #!/bin/bash 主脚本 (./cem-demo_publish_front) (./cem-demo_publish_backend) #!/bin/bash 后端脚本 ...
- 一套基于SpringBoot+Vue+Shiro 前后端分离 开发的代码生成器
一.前言 最近花了一个月时间完成了一套基于Spring Boot+Vue+Shiro前后端分离的代码生成器,目前项目代码已基本完成 止步传统CRUD,进阶代码优化: 该项目可根据数据库字段动态生成 c ...
- vue+springboot前后端分离实现单点登录跨域问题处理
最近在做一个后台管理系统,前端是用时下火热的vue.js,后台是基于springboot的.因为后台系统没有登录功能,但是公司要求统一登录,登录认证统一使用.net项目组的认证系统.那就意味着做单点登 ...
- Flask & Vue 构建前后端分离的应用
Flask & Vue 构建前后端分离的应用 最近在使用 Flask 制作基于 HTML5 的桌面应用,前面写过<用 Python 构建 web 应用>,借助于完善的 Flask ...
- SpringBoot+Jpa+SpringSecurity+Redis+Vue的前后端分离开源系统
项目简介: eladmin基于 Spring Boot 2.1.0 . Jpa. Spring Security.redis.Vue的前后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用 ...
- gin+vue的前后端分离开源项目
该项目是gin+vue的前后端分离项目,使用gorm访问MySQL,其中vue前端是使用vue-element-admin框架简单实现的: go后台使用jwt,对API接口进行权限控制.此外,Web页 ...
- docker-compose 部署 Vue+SpringBoot 前后端分离项目
一.前言 本文将通过docker-compose来部署前端Vue项目到Nginx中,和运行后端SpringBoot项目 服务器基本环境: CentOS7.3 Dokcer MySQL 二.docker ...
- 基于Vue的前后端分离项目实践
一.为什么需要前后端分离 1.1什么是前后端分离 前后端分离这个词刚在毕业(15年)那会就听说过,但是直到17年前都没有接触过前后端分离的项目.怎么理解前后端分离?直观的感觉就是前后端分开去做,即功 ...
随机推荐
- vue项目中使用ts(typescript)入门教程
最近项目需要将原vue项目结合ts的使用进行改造,这个后面应该是中大型项目的发展趋势,看到一篇不错的入门教程,结合它并进行了一点拓展记录之.本文从安装到vue组件编写进行了说明,适合入门. 1.引入T ...
- Redis基础知识补充及持久化、备份介绍
Redis知识补充 在上一篇博客<Redis基础认识及常用命令使用(一)–技术流ken>中已经介绍了redis的一些基础知识,以及常用命令的使用,本篇博客将补充一些基础知识以及redis持 ...
- c语言之结构
定义结构: struct point { int x; int y; }; 定义结构并声明变量: struct point { int x; int y; }pt1,pt2,pt3; 声明结构变量 s ...
- 最全总结 | 聊聊 Python 数据处理全家桶(Redis篇)
1. 前言 前面两篇文章聊到了 Python 处理 Mysql.Sqlite 数据库常用方式,本篇文章继续说另外一种比较常用的数据存储方式:Redis Redis:Remote Dictionary ...
- 带你搭建一个简单的mybatis项目:IDEA+spring+springMVC+mybatis+Mysql
最近小编有点闲,突发奇想想重温一下mybatis,然后在脑海中搜索了一下,纳尼,居然不太会用了,想到这里都是泪啊!!现在我所呆的的公司使用的是springboot+hebinate,编程都是使用的JP ...
- GAN训练技巧汇总
GAN自推出以来就以训练困难著称,因为它的训练过程并不是寻找损失函数的最小值,而是寻找生成器和判别器之间的纳什均衡.前者可以直接通过梯度下降来完成,而后者除此之外,还需要其它的训练技巧. 下面对历年关 ...
- 编写一个Open Live Writer的VSCode代码插件
起因 又是一年多没有更新过博客了,最近用Arduino做了一点有意思的东西,准备写一篇博客.打开尘封许久的博客园,发现因为Windows Live Writer停止更新,博客园推荐的客户端变为了Ope ...
- asp.net mvc核心、实体框架和simplepagin .js中的分页
下载demo - 516.1 KB , 介绍 这篇文章将解释如何在asp.net mvc核心应用程序中进行分页,目标是enity框架,并使用jquery模板simplepagin .js. 我的一个应 ...
- Docker开启远程连接,本地IDEA使用docker插件连接(不认证的版本和认证的版本都有)
前言 在学校学习的时候,要部署一个Java程序,一般是打成war包,放到服务器上的tomcat的webapp里面去: 后来SpringBoot出现内置了tomcat,就直接打成jar包,丢到服务器任何 ...
- 用cmd下载tp5.0版本
1.首先进入phpstudy的www目录 composer create-project topthink/think=5.0.* pt5.0的名字 --prefer-dist $ composer ...