Mbp,一个用于学习.net core的开发框架
Mbp(https://github.com/mbpframework/Mbp)是一个.net core 3的企业级web开发框架,是我个人用于学习.net core而发起的一个开源项目.这个借鉴了国外优秀开源项目abp vnext,及国内优秀开源框架Osharp的一些思想和实现.欢迎各路开发爱好者加入这个项目,一起学习,一起玩耍,共同成长!
Mbp目前有:
简单的模块化系统,
基于Jwt的统一身份验证,
基于角色和自定义策略的统一授权系统,
集成了swagger ui的poco controller
集成了ef core
提供AOP机制
后面还会继续加入Hangfire,IentityServer4,NServiceBus,RabbitMQ,SignalR,Redis,ML,ES,Multitenancy,virtualfilesystem等等.
下面简单介绍一下Mbp的这个框架吧.首先介绍下整个模块化框架的构成.
1.模块按照等级分为核心模块,组件级模块和应用级模块.核心模块默认为Mbp.Core.框架里面其他的模块都为组件级模块,模块之间会按照依赖关系顺序加载(这是一个to do项).因为目前模块比较少,启动也不会出问题,后续指定了依赖关系就会好很多拉.运行的时候Mbp会作为一个中间件加入到asp.net core的管道中.
2.Mbp.Core是框架的核心,其主要职责是将其他模块的服务注册到依赖注入系统中,同时把相关的中间件加到asp.net core管道中.同时提供了一些底层的抽象定义.
3.Mbp.AspNetCore是针对asp.net core体系封装的一个基本模块,同时这也是Mbp一个很重要的模块,很多模块都继承了它.这个模块的主要职责是实现了Poco controller和一些筛选器以级基本的asp,net core的设置都在这个模块做定义.
4.Mbp.EntityFrameworkCore,这是对EF Core的一个封装的模块,这个模块主要定义了Mbp作为一个企业级开发框架的基本主数据.包括用户,角色,菜单,权限,操作日志等(这个模块有个to do项就是要支持主数据的扩展)
5.Mbp.Authentication,是统一授权管理,其主要职责是定义了框架的授权策略
6.Mbp.Authentication.JwtBearer,是统一身份验证模块,其职责是配置授权身份认证,包括身份标识,设置验证参数,设置验证事件.
7.Mbp.Ddd.Application,此模块主要是为了辅助实施DDD而做的,其主要职责是负责DDD应用层的相关能力的提供,比如定义Dto,扩展分页查询.
8.Mbp.Swagger,此模块是为框架提供web api接口UI界面.
9.Mbp.LogDashboard,此模块是为框架提供框架运行日志分析的UI界面.
下一节,将介绍我是如何用这些模块构建一个web 应用的.
Mbp,一个用于学习.net core的开发框架相关推荐
- 一个用于学习的react项目
React-element 根据开源项目 vue-sell进行的开发,将其改造成了react的项目.在开始学习vue的时候就是用的这个项目,发现效果不错,所以在学习React也使用了此项目. 目的:将 ...
- Panda3D 是一个用于 Python 和 C++ 程序的 3D 渲染和游戏开发框架。
Panda3D 是一个用于 Python 和 C++ 程序的 3D 渲染和游戏开发框架. Panda3D 是一个用 C++ 编写的强大的 3D 引擎,具有一套完整的 Python 绑定.与其他引擎不同 ...
- 【点云路标提取】一个用于点云道路标志提取,分类和完善的的深度学习框架
A deep learning framework for road marking extraction, classification and completion from mobile las ...
- 2020年你应该学习 .Net Core
一.什么是.NET Core .NET Core是一个开源通用的开发框架,支持跨平台,即支持在Window,macOS,Linux等系统上的开发和部署,并且可以在硬件设备,云服务,和嵌入式/物联网方案 ...
- OsharpNS轻量级.net core快速开发框架简明入门教程-代码生成器的使用
OsharpNS轻量级.net core快速开发框架简明入门教程 教程目录 从零开始启动Osharp 1.1. 使用OsharpNS项目模板创建项目 1.2. 配置数据库连接串并启动项目 1.3. O ...
- OsharpNS轻量级.net core快速开发框架简明入门教程-基于Osharp实现自己的业务功能...
OsharpNS轻量级.net core快速开发框架简明入门教程 教程目录 从零开始启动Osharp 1.1. 使用OsharpNS项目模板创建项目 1.2. 配置数据库连接串并启动项目 1.3. O ...
- 让一个 csproj 项目指定多个开发框架
可移植类库.共享项目..NET Standard 项目都能够帮我们完成跨多个 .NET SDK 的单一项目开发,但它们的跨 SDK 开发都有些限制.现在,我们又有新的方式能够跨多个 .NET SDK ...
- Mobius 一个运行在 .NET Core 上的 .NET 运行时
导语 一个 .NET 应用仅仅只是一块在 .NET 运行时上面运行的二进制代码.而 .NET 运行时只是一个能执行这项任务的程序.当前的 .NET Framework 和 .NET Core 运行时采 ...
- 一步步学习EF Core(3.EF Core2.0路线图)
前言 这几天一直在研究EF Core的官方文档,暂时没有发现什么比较新的和EF6.x差距比较大的东西.不过我倒是发现了EF Core的路线图更新了,下面我们就来看看 今天我们来看看最新的EF Core ...
最新文章
- Learn OpenGL (五):向量
- VS Code上也能玩转Jupyter Notebook,这是一份完整教程
- Arrays和Collection之间的转换
- OpenSolaris北京用户组的第一次活动
- 不止代码:合唱队列(动态规划)
- js 阻止冒泡事件和默认事件
- 关于移动安全的一点总结
- [NOI2003]Editor [AHOI2006]文本编辑器editor BZOJ1507BZOJ1269
- [翻译]Scott Mitchell的ASP.NET2.0数据教程中文版索引(Canceled!!)
- FZU《C语言程序综合设计》
- 【转载】按键精灵教程
- 耗时两个礼拜,8000字安卓面试长文,重难点整理
- 结合原理与代码理解BiLSTM-CRF模型(pytorch)
- 雪花算法(SnowFlake)
- 二极管和稳压管的区别
- JavaScript之堆栈溢出
- 山东某商业银行社会招聘
- 按照实际案例用常用的查壳去壳和加壳工具说明使用方法
- 【高德LBS开源组件大赛】地震来了
- [shader]Unity 移动端海面
热门文章
- 在php中使用sockets:从新闻组中获取文章
- ubuntu系统备份和还原_如何使用Aptik在Ubuntu中备份和还原您的应用程序和PPA
- Android风格ppt,Material Design风格的快手PPT
- 10以内数的组成分解图_大班数学教案《10以内数的组成》
- mailing list的原理
- WPF 获取鼠标屏幕位置、窗口位置、控件位置
- vue-cli 3.0配置webpack目录别名alias
- 《Unity着色器和屏幕特效开发秘笈(原书第2版)》一2.9 打包和混合纹理
- JAVA配置Tomcat
- 使用OClint进行iOS项目的静态代码扫描