当前位置:网站首页>大话领域驱动设计——表示层及其他
大话领域驱动设计——表示层及其他
2022-06-26 15:45:00 【dotNET跨平台】
概述

表示层又称用户界面层,包含应用程序的页面、组件等UI元素。

服务层提供项目的HTTP API接口,包含MVC Controller和相关组件。

ABP框架虽然在表示层提供了不少组件,但是这些和DDD本身没有多少关系。而且随着前后端分离架构的流行,我们也很少会用到ABP提供的表示层功能,所以这一个篇章,就不对其用法做详细描述。

这一章,我重点讲解一下除前面章节提到的类库以外,ABP模板下包含表示层在内的其他类库划分及用途。
概览

表示层:
Web:是ABP提供的一个MVC项目,如果我们前后端不分离,则以此项目作为表示层。包含该项目下的所有界面。
HttpApi.Host:是ABP提供的一个WebAPI项目,用于前后端分离架构时提供WebAPI服务。包含管道模型配置、服务设置等基础代码,不包含用户界面,也不包含实现业务的Controller。

服务层:
HttpApi:此项目包含自定义的Controller,如果不使用动态WebAPI而是希望控制器由我们自己编写,则需要写在该项目中。

客户端代理:
HttpApi.Client:是一个客户端动态代理项目,如果是我们的服务是由另一个ABP项目调用,ABP框架自动化生成客户端调用的代理功能,客户端只需要引用此项目,并做相应配置,即可以依赖注入方式快速调用服务。在上一篇章《ABP微服务架构详细教程》的聚合服务层实现中,我们就使用了这个机制。
结束语
这个系列到这里就结束了,在这一系列,我对领域驱动设计的战略设计和战术设计以及ABP框架为战术设计提供的基础组件用法做了讲解。
后面,我准备再开一个系列作为ABP框架各种用法的补充教程。
有任何问题欢迎加入微信交流群提问或一起交流。




欢迎加入微信交流群
END


关注我获得
更多精彩
边栏推荐
- 3. Keras version model training
- NFT contract basic knowledge explanation
- [CEPH] MKDIR | mksnap process source code analysis | lock state switching example
- Keil4 opens the single-chip microcomputer project to a blank, and the problem of 100% program blocking of cpu4 is solved
- (一)keras手写数字体识别并识别自己写的数字
- 『C语言』题集 of ⑩
- 【leetcode】331. Verifying the preorder serialization of a binary tree
- 李飞飞团队将ViT用在机器人身上,规划推理最高提速512倍,还cue了何恺明的MAE...
- NFT 项目的开发、部署、上线的流程(1)
- NFT交易原理分析(1)
猜你喜欢

Solana capacity expansion mechanism analysis (1): an extreme attempt to sacrifice availability for efficiency | catchervc research

Svg canvas canvas drag

Svg rising Color Bubble animation

NFT Platform Security Guide (2)

人人都当科学家之免Gas体验mint爱死机

Have you ever had a Kindle with a keyboard?

NFT 平台安全指南(1)

HW safety response

Super double efficiency! Pycharm ten tips

Handwritten numeral recognition, run your own picture with the saved model
随机推荐
Swiftui retrieves the missing list view animation
Stepn débutant et avancé
【leetcode】331. Verifying the preorder serialization of a binary tree
3. Keras version model training
NFT交易原理分析(2)
Handwritten numeral recognition, run your own picture with the saved model
为什么图像分割任务中经常用到编码器和解码器结构?
(DFS search) acwing 2005 horseshoe
C. Inversion Graph
JS handwritten bind, apply, call
Angel 3.2.0 new version released! Figure the computing power is strengthened again
振动式液量检测装置
查词翻译类应用使用数据接口api总结
(一)keras手写数字体识别并识别自己写的数字
【leetcode】112. 路径总和 - 113. 路径总和 II
10 tf. data
5 model saving and loading
Solana扩容机制分析(1):牺牲可用性换取高效率的极端尝试 | CatcherVC Research
[thinking] what were you buying when you bought NFT?
C language reading data