论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
软件与程序人生
›
后端开发
›
.Net
›
第60篇 abp框架先容
第60篇 abp框架先容
温锦文欧普厨电及净水器总代理
金牌会员
|
2024-12-5 14:48:54
|
显示全部楼层
|
阅读模式
楼主
主题
743
|
帖子
743
|
积分
2229
abp是一个开源且文档友好的应用步伐框架,提供了一个基于领域驱动设计(DDD)的体系布局模子,可以支持.net core和.net framework两种技术流派。
1.abp框架特点
1.1 依赖注入
这个部门利用 Castle windsor (依赖注入容器)来实现依赖注入,这个也是我们经常利用IOC来处理的方式;
1.2 Repository仓储模式
已实现了Entity Framework、NHibernate、MangoDB、内存数据库等,仓储模式可以快速实现对数据接口的调用;
1.3 身份验证与授权管理
可以利用声明特性的方式对用户是否登录,或者接口的权限举行验证,可以通过一个很细粒度的方式,对各个接口的调用权限举行设置;
1.4 数据有用性验证
ABP自动对接口的输入参数对象举行非空判定,而且可以根据属性的申请信息对属性的有用性举行校验;
1.5 审计日记记录
记录我们对每个接口的调用记录,以及对记录的创建、修改、删除人员举行记录等处理;
1.6 Unit Of Work工作单位模式
为应用层和仓储层的方法自动实现数据库事务,默认全部应用服务层的接口,都是以工作单位方式运行,即使它们调用了差别的存储对象处理,都是处于一个事务的逻辑里面;
1.7 异常处理
abp框架提供了一整套比较完善的流程处理操作,可以很方便的对异常举行举行记录和传递;
1.8 日记记录
可以利用Log4Net举行常规的日记记录,方便我们跟踪步伐处理信息和错误信息;
1.9 多语言/本地化支持
abp框架对多语言的处理也是比较友好的,提供了对XML、JSON语言信息的配置处理;
2.0 Auto Mapping自动映射
这个是ABP的很重要的对象隔离概念,通过利用AutoMaper来实现域对象和DTO对象的属性映射,可以隔离两者的逻辑关系,但是又能轻松实现属性信息的赋值;
2.1 动态Web API层
利用这个动态处理,可以把Application Service 直接发布为Web API层,而不须要在累赘的为每个业务对象手工创建一个Web API的控制器,非常方便;
2.2 动态JavaScript的AJax代理处理
可以自动创建Javascript 的代理层来更方便利用Web Api,这个在Web层利用。
2.abp框架特别的功能
2.1 多租户支持
(每个租户的数据自动隔离,业务模块开辟者不须要在保存和查询数据时写相应代码;
2.2 软删除支持
继续相应的基类或实现相应接口,会自动实现软删除
2.3 系统设置存取管理
系统级、租户级、用户级,作用范围自动管理
2.4 EventBus事件总线
实现领域事件(Domain Events)
3 abp框架分层架构图
项目步伐分层架构图(领域驱动设计)
不但可以实用web开辟,也适合c/s开辟;
前端Web端可以利用Ant-Design(React)、IView(VUE)、Angular等差别的前端技术来承载界面呈现层
前端Client 桌面端可以利用MaterialDesign 设计规范,按照Prism或者MVMMLight 的MVVM框架团结应用起来
4 web api优先框架
ABP 框架的核心主要以.NET的后端技术栈为主线,固然ASP.NET CORE MVC和 Web API 分成了两部门,但是他的动态发布为Web API有限的架构提供了更好的便利。
在当今盛行的展现层中,越来越不依赖于后端的技术实现,而侧重于Web API标准化的对接,基于JSON数据的交互处理。不管是以Ant-Design(React)、IView(VUE)、Angular等技术应用的Web前端,我们可以看到这些架构很容易实现对Web API的标准接口对接。
5 abp框架的项目布局
ABP 框架包含了两个部门,一个基础的ABP框架,一个ABP基础框架上的扩展应用。提供了人员人员、角色、权限、会话、身份验证、多租户、日记记录等等内容,我们一般指的ABP框架应用就是这个基础上扩展自己的业务项目。这个部门,我们可以根据官网上举行一定的选项配置,然后下载利用。
基础布局组成部门:
扩展应用模板样式如下,需到官网下载
下载.net core 项目后,其中后端部门的项目视图如下所示
该项目主要是分为下面几个分层:
Application应用层:应用层提供一些应用服务(Application Services)方法供展现层调用。一个应用服务方法接收一个DTO(数据传输对象)作为输入参数,利用这个输入参数执行特定的领域层操作,并根据须要可返回另一个DTO。
Core领域核心层,领域层就是业务层,是一个项目的核心,全部业务规则都应该在领域层实现。这个项目里面,除了界说所需的领域实体类外,其实可以界说我们自己的自界说的仓储对象(雷同DAL/IDAL),以及界说自己的业务逻辑层(雷同BLL/IBLL),以及基于AutoMapper映射规则等内容。
EntityFrameworkCore 实体框架核心层,这个项目不须要修改太多内容,只须要在DbContext里面到场对应领域对象的仓储对象即可。
Migrator数据迁移层,这个是一个辅助创建的控制台步伐项目,假如基于DB First,我们可以利用它来创建我们项目的初始化数据库。
Web.Core Web核心层,基于Web或者Web API的核心层,提供了对身份登陆验证的基础处理,没有其他内容。
Web.Core.Host Web API的宿主层,也是动态发布Web API的核心内容,另外在Web API里面整合了Swagger,使得我们可以方便对Web API的接口举行调试。
Tests 单位测试层,这个提供了一些应用层对象的模拟测试,其中测试的数据库利用的是Entity Framework 的内存数据库,不影响实际数据库内容。
文档转载自:
https://zhuanlan.zhihu.com/p/338971621
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
正序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
发新帖
回复
温锦文欧普厨电及净水器总代理
金牌会员
这个人很懒什么都没写!
楼主热帖
可扩展性对物联网管理系统有哪些影响? ...
一文详解|影响成长的关键思考 ...
如何入门渗透测试
2 分钟,了解 4 个极为有用的 MetricsQ ...
简析XDP的重定向机制
大企业才用的分布式唯一Id,它比GUID好 ...
☆常用的Sql语句汇总(DDL/DML) ...
高校学籍管理系统(SQL Server数据库课 ...
SQL的语法
TypeScript与JavaScript的区别
标签云
挺好的
服务器
快速回复
返回顶部
返回列表