CSFramework.WebApi服务端处理流程与机制|C/S开发框架
作者:csframework|C/S框架网  发布日期:2022/02/21 16:57:05

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

CSFramework.WebApi服务端开发框架WebApi后台框架WebApi框架原创软件@csframework.com

CSFramework.WebApi服务端处理流程与机制

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

控制器 (Controllers)

控制器

名称

路由

说明

1

DoController

通用接口控制器

api/do

提供通用接口,支持数据操作、系统维护、系统登录等客户端请求。

2

GateController

系统登录控制器

api/gate

用户登录、登出。

3

FileController

文件管理控制器

user/file

用户文件存储,支持大文件上传和下载。

4

ImageController

图片资源控制器

share/image

用户图片资料,支持图片上传和下载。

5

SystemController

系统维护控制器

admin/system

后台数据管理,缓存数据管理,系统管理。

命令处理程序 (Commands)

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

命令处理机制是CSFramework.WebApi后端开发框架采用的最新设计模式,本质上命令就是业务逻辑层。Api接口是暴露给客户端访问的端点(Endpoint),假设我们要设计一个含有几百个功能的大型系统,是不是要设计数百个Api接口?用命令模式可以解决这个问题,设计一个通用的接口来处理所有客户端的请求,然后用编号区分具体功能,比如编号80100代表客户订单,80200代表采购订单。服务端接收到请求后,通过命令工厂和编号创建对应的命令实例,对于三层架构来说,就是创建了具体的业务逻辑层。

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

IRequestCommand:标准命令接口,用于处理客户端提交的IUserRequest接口约束的数据格式。该命令设计简单,结构清晰,使用方便,但是服务端需要有具体的接口方法对应,因此导致服务端接口过多。

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

IRequestActionCommand:具体操作的命令接口,用于处理客户端提交的IUserRequestAction接口约束的数据格式。灵活性好,扩展性强,服务端只需要定义一个接口可以满足所有客户端请求。缺点是调用Api接口的第三方软件开发者需要知道每一个具体功能的接口编号,并且要求提交的数据也较多。

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

开发框架提供上述两种命令处理方式,极大满足软件项目的设计需求,开发人员还可以修改UserRequest模型以及Command类来扩展和定制特性功能。

数据访问层 (Data Access Layer)

数据访问层继承关系图

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

数据访问层(Data Access Layer)分为单表操作数据层和主从表操作数据层,开发人员根据功能区分来选择继承方式。若提交一张资料表,使用dalBaseBusiness基类的功能完全兼容dalBaseDataDict基类的功能。主从表操作数据层实现要复杂一点,比如更新主外键、自动生成流水号、事务处理等。

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

CSFramework.WebApi服务端处理流程与机制|C/S开发框架

业务逻辑层(命令)将处理传递到数据访问层,首先根据数据库提供者创建数据库对象实例,因此开发框架支持跨数据库操作。然后通过SQL命令生成器分析ORM模型,自动生成三种SQL脚本(INSERT,UPDATE,DELETE)。最后调用数据库对象(IDatabase)的相关方法提交或获取数据。

C/S框架网|原创精神.创造价值.打造精品



扫一扫加作者微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务
上一篇 下一篇