BCVP(Blog.Core&Vue Project)是基于.NET Core开箱即用的企业级前后端分离权限框架,由国内微软MVP“老张的哲学”出品。相比起“土牛”的ABP Zero框架,BCVP则更为短小精干。对比java开源的生态,我个人觉得BCVP框架就相当于java界的RuoYi框架,非常适合信息系统以及互联网项目的开发。
BCVP有一个比RuoYi更强的优势,就是ORM更加灵活,对多数据库的支持和数据库的主从设置方面,要比RuoYi更为强大灵活,这块只有深入实践过的码农才清楚,而RuoYi框架的后台界面则做的更加细腻、代码生成方面更加灵活,可以说是各有优势。
后台界面:
框架特点:
采用仓储+服务+接口的形式封装框架;
使用Swagger做api文档;
使用MiniProfiler做接口性能分析;
使用Automapper做Dto处理;
接入SqlSugar ORM,封装数据库操作;
项目启动,自动生成seed种子数据;
提供五种日志输出;
支持自由切换多种数据库,Sqlite/SqlServer/MySql/PostgreSQL/Oracle;
异步async/await开发;
支持事务;
AutoFac接入做依赖注入;
支持AOP切面编程;
支持CORS跨域;
支持T4代码模板,自动生成每层代码;
支持一键创建自己项目;
封装 JWT 自定义策略授权;
使用Log4Net日志框架+自定义日志输出;
使用SingleR推送日志信息到管理后台;
搭配前端Blog项目,vue开发;
搭配一个Admin管理后台,用vue+ele开发;
IdentityServer4 认证;
API 限速;
作业调度 Quartz.net;
Sqlsugar 读写分离;
系统环境
windows 10、SQL server 2012、Visual Studio 2019+、Windows Server 2008 R2
后端技术:
1、ASP.NET Core 3.1 API
2、Swagger 前后端文档说明,基于RESTful风格编写接口
3、Repository + Service 仓储模式编程
4、Async和Await 异步编程
5、CORS 简单的跨域解决方案
6、AOP基于切面编程技术
7、Autofac 轻量级IoC和DI依赖注入
8、Vue 本地代理跨域方案,Nginx跨域代理
9、JWT权限验证
10、Filter 过滤器
11、Middleware 中间件
12、AutoMapper 自动对象映射
13、Redis
数据库技术
SqlSugar 轻量级ORM框架,CodeFirstT4 模板生成框架结构支持SqlServer、Mysql、Sqlite、Oracle、Pgql数据库支持多库操作
前端技术
Vue 2.x 框架全家桶 Vue2 + VueRouter2 + Webpack + Axios + vue-cli + vuex ElementUI 基于Vue 2.0的组件库Nuxt.js服务端渲染SSR
.NET后台项目结构:
Vue后台项目结构:
结语
BCVP是国内.NET社区火热的通用后台开发框架,系统使用了很多优秀的设计模式和开发理念,后台界面精美实用,非常适合网站与信息系统开发。如果你是.NET和Vue技术栈的开发者,或者你想学习.net core 和vue.js的相关技术,BCVP这个项目不容错过。