SnailAspNetCoreFramework框架系列博客

 

写在前面的啰嗦话

  上次我介绍了自己的开源WebApi框架(https://www.cnblogs.com/shengyu-kmust/p/8279300.html),当时做此框架时,asp.net core 才出到1.0。现在asp.net core的版本已经到了3.1,以后core是大的趋势了。博主经过了将近两年的开发实践,结合自己项目上的经验,开发了基于asp.net core 3.1的另一个框架,本意是用于自己接私活时用。此框架包含代码生成功能,生成后端和前端的代码,并能自动生成数据库。我已经用此框架开发了几个项目,还是比较稳定的。项目使用的技术都是这两年在实践中总结和积累的技术点。现在开源出来,并打算做一系列的博文,对此框架的各各个技术点和功能做一个介绍。现在国内的.net行情不是太好,在网上一搜,全是java的,哎,博主现在31岁,坐标昆明,一个it技术很不发达的城市,在这里已经很难找到一个待遇对得起自己的工作了,每个月的房贷又重,中年人的悲催。。。此框架是我这几年的技术积累,利用业余时间做博文介绍和开源维护,希望能给国内的.net做一点贡献。如果你看到这系列博文,请不惜给个github star。谢谢!

   

Github地址

  此项目一直在更新的,如有问题,可github提issues

snailAspNetCoreFrameWork仓库地址:https://github.com/shengyu-kmust/SnailAspNetCoreFramework

snail公共库地址:https://github.com/shengyu-kmust/Snail

 

SnailAspNetCoreFramework介绍

SnailAspNetCoreFramework是什么,能做什么?

  • 基于asp.net core 3.1的快速开发框架,针对后台管理类型项目、前后端分离
  • 只需一个配置文件,即可快速生成项目,包含后端代码、前端代码、数据库等代码。

有什么功能,用了什么技术?

  • 项目总体是基于asp.net core 3.1,vue-element-admin,entityframework
  • 通用权限的实现,基于角色进行权限控制(RBAC设计),可自已定义User,Role等表,能很好的加入到现有的项目。
  • 定时任务功能,用hangfire技术,只需在方法上加上特性即可自动添加到定时任务
  • 多数据库支持,用entityframework,不需改代码即可适配MySql,Oracle,SqlServer,SqlLite等多种数据库
  • 良好的输入输出格式约定和异常处理
  • 接口文档Swagger,用NSwagger技术。接口描述支持、生产和开发环境停启用功能
  • 多种缓存技术,如接口缓存,service层的aop缓存,实体缓存等,支持本地缓存和分布式缓存的切换
  • 依赖注入aop功能,用autofac实现。已包含日志和缓存两种aop实现,各service会自动注入
  • eventbus,用cap实现。
  • command bus,集成Mediator
  • 通用CRUD功能,controller、service和dal层的CRUD代码自动生成
  • 实时通讯,用Signalr
  • 日志功能,用NLog
  • 代码生成功能,用t4模块生成各层级的代码
  • 单元测试,用xunit,测试项目已经搭建好,只需写测试用例
  • entityframework code first,根据代码生成数据库。提供migrate和ensureCreated两种方式,分别适用于持续更新版本和快速搭建上线两种情况
  • automapper,已实现所有Entity和Dto之间的映射
  • 前端常用的组件,如CRUD组件,table组件,form表单组件,这个组件只需一个配置json可即完成常用的完整功能,不再重复敲代码

如何下载和使用

  • 项目github地址为:https://github.com/shengyu-kmust/SnailAspNetCoreFramework,本次的系列博文是基于tag=v1.0,以后此项目会持续更新维护。
  • 项目的简单入门教程请看如下gif
  • 下载和运行项目

  • 自动生成功能的配置

  • 运行效果

 

 

后续会有系列博文对此框架做一个详细的介绍,暂时定义如下章节

  • 1.框架内各项目及目录的介绍和总设计思路——SnailAspNetCoreFramework快速开发框架
  • 2.接口输入校验、输出格式、及异常处理——SnailAspNetCoreFramework快速开发框架之后端设计
  • 3.通用权限设计——SnailAspNetCoreFramework快速开发框架之后端设计
  • 4.如何提供给前端良好的接口文档(Swagger)——SnailAspNetCoreFramework快速开发框架之后端设计
  • 5.各场景下的缓存使用——SnailAspNetCoreFramework快速开发框架之后端设计
  • 6.基于castle的AOP设计和常用缓存、性能、日志拦截器实现——SnailAspNetCoreFramework快速开发框架之后端设计
  • 7.依赖注入介绍之autofac——SnailAspNetCoreFramework快速开发框架之后端设计
  • 8.为什么用Eventbus,怎么用——SnailAspNetCoreFramework快速开发框架之后端设计
  • 9.日志组件之Nlog介绍——SnailAspNetCoreFramework快速开发框架之后端设计
  • 10.Mediatr介绍——SnailAspNetCoreFramework快速开发框架之后端设计
  • 11.controller、service、dal层的通用CRUD设计——SnailAspNetCoreFramework快速开发框架之后端设计
  • 12.对象映射之利器automapper——SnailAspNetCoreFramework快速开发框架之后端设计
  • 13.如何监控ef生成的sql语句——SnailAspNetCoreFramework快速开发框架之后端设计
  • 14..net core的几种部署方式介绍——SnailAspNetCoreFramework快速开发框架之后端设计
  • 15.实时通讯之signalr——SnailAspNetCoreFramework快速开发框架之后端设计
  • 16.如何用ef code first进行项目的数据库版本持续迭代——SnailAspNetCoreFramework快速开发框架之后端设计
  • 17.代码自动生成功能介绍——SnailAspNetCoreFramework快速开发框架之后端设计
  • 18.如何监控项目的各个功能是否正常(HealthCheck)——SnailAspNetCoreFramework快速开发框架之后端设计
  • 19.定时任务之hangfire介绍——SnailAspNetCoreFramework快速开发框架之后端设计
  • 20.前端总体介绍——SnailAspNetCoreFramework快速开发框架之前端设计
  • 21.再也不用跪求后端接口了(MOCK的使用)——SnailAspNetCoreFramework快速开发框架之前端设计
  • 22.前端的权限控制——SnailAspNetCoreFramework快速开发框架之前端设计
  • 23.如何避免重复写前端的CRUD代码(前端各种SnailXXX组件介绍和使用)——SnailAspNetCoreFramework快速开发框架之前端设计
  • 24.请求代理介绍——SnailAspNetCoreFramework快速开发框架之前端设计

 

 

 

基于asp.net的前端框架请移步到如下博文

webapi框架搭建系列博客

 

 
posted @ 2020-07-29 21:52  shengyu_kmust  阅读(649)  评论(1编辑  收藏  举报