最近.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版本

开发环境

开发工具

Visual Studio 2019+Visual Studio Code

后端

.Net Core 3.1DapperSerilogAutoMapperFluentValidationSwagger、RabbitMQ、Redis、EPPlus

前端

Node.js 10+Vue.js 2.6+Vue CLIVuexVueRouterElement-UI

前端框架 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】发布~的更多相关文章

  1. python django框架+vue.js前后端分离

    本文用于学习django+vue.js实现web前后端分离协作开发.以一个添加和删除数据库书籍应用为实例. django框架官方地址:https://www.djangoproject.com/ vu ...

  2. Tornado + vue.js 前后端分离运行脚本

    shell脚本部分: #!/bin/bash 主脚本 (./cem-demo_publish_front) (./cem-demo_publish_backend) #!/bin/bash 后端脚本 ...

  3. 一套基于SpringBoot+Vue+Shiro 前后端分离 开发的代码生成器

    一.前言 最近花了一个月时间完成了一套基于Spring Boot+Vue+Shiro前后端分离的代码生成器,目前项目代码已基本完成 止步传统CRUD,进阶代码优化: 该项目可根据数据库字段动态生成 c ...

  4. vue+springboot前后端分离实现单点登录跨域问题处理

    最近在做一个后台管理系统,前端是用时下火热的vue.js,后台是基于springboot的.因为后台系统没有登录功能,但是公司要求统一登录,登录认证统一使用.net项目组的认证系统.那就意味着做单点登 ...

  5. Flask & Vue 构建前后端分离的应用

    Flask & Vue 构建前后端分离的应用 最近在使用 Flask 制作基于 HTML5 的桌面应用,前面写过<用 Python 构建 web 应用>,借助于完善的 Flask ...

  6. SpringBoot+Jpa+SpringSecurity+Redis+Vue的前后端分离开源系统

    项目简介: eladmin基于 Spring Boot 2.1.0 . Jpa. Spring Security.redis.Vue的前后端分离的后台管理系统,项目采用分模块开发方式, 权限控制采用 ...

  7. gin+vue的前后端分离开源项目

    该项目是gin+vue的前后端分离项目,使用gorm访问MySQL,其中vue前端是使用vue-element-admin框架简单实现的: go后台使用jwt,对API接口进行权限控制.此外,Web页 ...

  8. docker-compose 部署 Vue+SpringBoot 前后端分离项目

    一.前言 本文将通过docker-compose来部署前端Vue项目到Nginx中,和运行后端SpringBoot项目 服务器基本环境: CentOS7.3 Dokcer MySQL 二.docker ...

  9. 基于Vue的前后端分离项目实践

    一.为什么需要前后端分离 1.1什么是前后端分离  前后端分离这个词刚在毕业(15年)那会就听说过,但是直到17年前都没有接触过前后端分离的项目.怎么理解前后端分离?直观的感觉就是前后端分开去做,即功 ...

随机推荐

  1. Magicodes.IE 2.3重磅发布——.NET Core开源导入导出库

    在2.3这一版本的更新中,我们迎来了众多的使用者.贡献者,在这个里程碑中我们也添加并修复了一些功能.对于新特点的功能我将在下面进行详细的描述,当然也欢迎更多的人可以加入进来,再或者也很期待大家来提is ...

  2. zookeeper(5) 客户端

    zookeeper客户端主要负责与用户进行交互,将命令发送到服务器,接收服务器的响应,反馈给用户.主要分为一下三层: 用户命令处理层 用户命令处理层的功能是读取用户输入的命令,解析用户命令和输入参数, ...

  3. JDK动态代理学习心得

    JDK动态代理是代理模式的一种实现方式,其只能代理接口.应用甚为广泛,比如我们的Spring的AOP底层就有涉及到JDK动态代理(此处后面可能会分享) 1.首先来说一下原生的JDK动态代理如何实现: ...

  4. Unity3d 游戏设计(一)井字棋

    3D游戏设计(一)井字棋 运行效果: 实现过程 声明变量: public Texture2D O; public Texture2D X; GUIStyle myStyle; private int ...

  5. 使用Navicat连接MySQL8.0版本报1251错误

    出现1251错误是因为,MySQL8.0版本改变了密码的验证规则caching_sha2_password,MySQL之前的版本验证规则是mysql_native_password,现在需要修改MyS ...

  6. CUMTCTF'2020 已做wp

    三天的比赛终于结束了,不知道有没有睡10个小时,感觉像中了魔一样,但也很享受这种感觉,除了没有能和我一起琢磨题目朋友.. 就最终结果而言还是有一些可惜,明明号称擅长web和misc反而是得分比例最小的 ...

  7. python-igraph

    linux安装python-igraph: $ sudo apt-get install -y libigraph0-dev $ pip install python-igraph ------for ...

  8. 新手学习Python第三方包库pip安装失败总结

    这篇文章纯原创,是之前自己学习使用pyhton时遇到的问题,故在此记录一下. 问题与需求:用python下载第三方库或包的时候出错怎么办? 方法有一下三种,可以解决大部分的问题. 1.在cmd命令控制 ...

  9. 接口鉴权,提供给第三方调用的接口,进行sign签名

    //场景:公司要跟第三方公司合作,提供接口给对方对接,这样需要对接口进行授权,不然任何人都可以调我们公司的接口,会导致安全隐患: 思路: 在每个接口请求参数都带上ApiKey 和sign签名: 我们在 ...

  10. 【小白学PyTorch】15 TF2实现一个简单的服装分类任务

    [新闻]:机器学习炼丹术的粉丝的人工智能交流群已经建立,目前有目标检测.医学图像.时间序列等多个目标为技术学习的分群和水群唠嗑的总群,欢迎大家加炼丹兄为好友,加入炼丹协会.微信:cyx64501661 ...